Yii Mailer Library
The package provides the content composition functionality, and a basic interface for sending emails. Actual mail sending is provided by separate interchangeable packages.
Out of the box the package profiles a file mailer that, instead of actually sending an email, writes its contents into a file. There are also Swift Mailer and Symfony Mailer based official drivers available as a separate packages that actually can send emails.
The package could be installed with composer:
composer require yiisoft/mailer --prefer-dist
The following code can be used to send an email:
/** * @var \Yiisoft\Mailer\MailerInterface $mailer */ $message = $mailer ->compose() ->withFrom('email@example.com') ->withTo('firstname.lastname@example.org') ->withSubject('Message subject') ->withTextBody('Plain text content') ->withHtmlBody('<b>HTML content</b>'); $mailer->send($message);
See Yii guide to mailing for more info.
You can set a specific locale that will be used to localize view files with
/** * @var \Yiisoft\Mailer\MailerInterface $mailer */ $message = $mailer ->withLocale('de_DE') ->compose('html-view') ->withFrom('email@example.com') ->withTo('firstname.lastname@example.org') ->withSubject('Message subject'); $mailer->send($message);
The package is tested with PHPUnit. To run tests:
The code is statically analyzed with Psalm. To run static analysis:
The Yii Mailer Library is free software. It is released under the terms of the BSD License.
LICENSE for more information.
Maintained by Yii Software.