https://github.com/shuchkin/simplemail
Simple email sending class for PHP, smtp client.
https://github.com/shuchkin/simplemail
Last synced: about 10 hours ago
JSON representation
Simple email sending class for PHP, smtp client.
- Host: GitHub
- URL: https://github.com/shuchkin/simplemail
- Owner: shuchkin
- License: mit
- Created: 2019-02-18T13:27:29.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2024-01-15T13:49:06.000Z (over 1 year ago)
- Last Synced: 2025-04-16T14:54:42.638Z (6 days ago)
- Language: PHP
- Size: 17.6 KB
- Stars: 14
- Watchers: 1
- Forks: 4
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# SimpleMail class 0.7.13
A simple mail composer, phpmailer alternative, SMTP client.
UTF-8 html messages and attachements supported.## Basic Usage
```php
$mail = new Shuchkin\SimpleMail();
$mail->setFrom('[email protected]')
->setTo('[email protected]')
->setSubject('Test SimpleMail')
->setText('Hi, Sergey!')
->send();
```
## InstallThe recommended way to install this library is [through Composer](https://getcomposer.org).
[New to Composer?](https://getcomposer.org/doc/00-intro.md)This will install the latest supported version:
```bash
$ composer require shuchkin/simplemail
```
or download class [here](https://github.com/shuchkin/simplemail/blob/master/src/SimpleMail.php)## Fabric
```php
// setup mail
$mail = new Shuchkin\SimpleMail();
$mail->setFrom('[email protected]', 'Example');
// fabric method to( $toEmail )
$mail->to('[email protected]')
->setSubject('Account activation')
->setHTML('Your account has activated!
', true)
->send();// fabric method compose( $toEmail, $subject, $text )
$mail->compose('[email protected]', 'New Account', 'https://example.com/useradmin/123')->send();
```
## SMTP
```php
$mail = new Shuchkin\SimpleMail('smtp', [
'host' => 'ssl://smtp.yandex.ru',
'port' => 465,
'username' => '[email protected]',
'password' => 'test'
]);$mail->setFrom('[email protected])
->setTo('[email protected]')
->setSubject('Test SMTP')
->setText('Yandex SMTP secured server')
->send();
```
## Attachments & reply
```php
$mail = new Shuchkin\SimpleMail();
$mail->setFrom('[email protected]')
->setTo('[email protected]')
->setSubject('Test attachments')
->setHTML('See attached price list.
')
Logo
->attach( __DIR__.'/doc/PriceList.pdf')
->attach( __DIR__.'/images/logo400x300.jpg', 'logo.jpg')
->setReply('[email protected]')
->send();
```
## Priority & custom headers
```php
$mail = new Shuchkin\SimpleMail();
$mail->setFrom('[email protected]')
->setTo('[email protected]')
->setSubject('WARNING!')
->setText('SERVER DOWN!')
->setPriority('urgent')
->setCustomHeaders(['Cc' => '[email protected]'])
->send();
```
## Custom transport
```php
$mail = new Shuchkin\SimpleMail( function( $mail, $encoded ) {
print_r( $encoded );
});
$mail->setFrom('[email protected]')
->setTo('[email protected]')
->setSubject('WARNING!')
->setText('SERVER DOWN!')
->send();/*
Array
(
[from] => [email protected]
[to] => [email protected]
[subject] => =?UTF-8?B?V0FSTklORyE=?=
[message] => SERVER DOWN!
[headers] => To: [email protected]
Subject: =?UTF-8?B?V0FSTklORyE=?=
X-Mailer: PHP/7.2.14
MIME-Version: 1.0
From: [email protected]
Reply-To: [email protected]
Date: Mon, 18 Feb 2019 13:17:28 +0000
Content-Type: text/plain; charset="UTF-8"
)
*/
```
## Export & import
```
SimpleMail::toArray() - export to array
SimpleMail::fromArray( $data ) - import from assoc array (fabric)
SimpleMail::toJSON() - export to JSON
SimpleMail::fromJSON( $json ) - import from json (fabric)
```## History
0.7.13 (2023-01-15) all properties is public now
0.7.12 (2022-02-04) PHP/5.3 support
0.7.11 (2019-02-18) Initial release