shaqman / yii2-queue-mailer
Yii2的背景邮件发送装饰器
0.3.0
2018-03-11 08:30 UTC
Requires
- yiisoft/yii2: ~2.0.13
- yiisoft/yii2-queue: ^2.0
README
使用任何队列接口为Yii2提供背景邮件发送。此扩展已与yii2 queue extension进行测试。
尽管它应该与任何兼容的邮件发送扩展一起工作,但此扩展仅与swiftmailer extension进行了测试。
安装
通过composer安装此扩展是首选方式。
运行以下命令之一:
php composer.phar require --prefer-dist shaqman/yii2-queue-mailer
或添加
"shaqman/yii2-queue-mailer": "*"
使用方法
配置您的应用程序的queue
组件。
详细信息请见此处:https://github.com/yiisoft/yii2-queue/
将\shaqman\mailer\queuemailer\Mailer
配置为您的首选邮件发送器。
'mailer' => [
'class' => \shaqman\mailer\queuemailer\Mailer::class,
'queue' => 'queue' // name of queue component, or a valid array configuration for it.
'syncMailer' => [ // Any valid mailer should work
'class' => 'yii\swiftmailer\Mailer',
'useFileTransport' => true,
],
],
现在您可以像往常一样发送邮件。
$message = \Yii::$app->mailer->compose()
->setSubject('test subject')
->setFrom('test@example.org')
->setHtmlBody('test body')
->setTo('user@example.org')
->send($message);
与默认的send
相比,有一个小差别需要注意。现在它返回一个标识邮件分配到的队列ID的整数。这是预期的,因为在执行命令时无法知道邮件是否已成功发送。