shaqman/yii2-queue-mailer

Yii2的背景邮件发送装饰器

安装次数: 13,963

依赖: 1

建议: 0

安全: 0

星星: 8

关注者: 4

分支: 8

开放问题: 0

类型:yii2-extension

0.3.0 2018-03-11 08:30 UTC

This package is auto-updated.

Last update: 2024-09-05 19:01:52 UTC


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的整数。这是预期的,因为在执行命令时无法知道邮件是否已成功发送。