nfacha / yii2-yashop-ses
用于通过 Amazon SES 发送电子邮件的扩展
1.0.6
2021-02-18 12:18 UTC
Requires
- yiisoft/yii2: *
README
通过 Amazon SES 发送电子邮件的扩展。属于 nfacha 的一部分
安装
安装此扩展的首选方式是通过 Composer。
运行以下命令之一
php composer.phar require --prefer-dist nfacha/yii2-yashop-ses "*"
或者
"nfacha/yii2-yashop-ses": "*"
将以下内容添加到您的 composer.json
文件的 require 部分中。
使用方法
要使用此扩展,您应该在应用程序配置中配置它,如下所示
'components' => [ ... 'mail' => [ 'class' => 'nfacha\ses\Mailer', 'access_key' => 'Your access key', 'secret_key' => 'Your secret key', 'host' => 'email.us-east-1.amazonaws.com' // not required ], ... ],
要发送电子邮件,您可以使用以下代码
Yii::$app->mail->compose('contact/html', ['contactForm' => $form]) ->setFrom('from@domain.com') ->setTo($form->email) ->setSubject($form->subject) ->send();
要发送带有头部的电子邮件,您可以使用以下代码
Yii::$app->mail->compose('contact/html', ['contactForm' => $form]) ->setFrom('from@domain.com') ->setTo($form->email) ->setSubject($form->subject) ->setHeader('Precedence', 'bulk') ->setHeader('List-id', '<1>') ->setHeader('List-Unsubscribe', Url::to(['user/unsubscribe'], true)) ->send();
提高发送电子邮件的速度
Yii::$app->mailer->getSES()->enableVerifyHost(false); Yii::$app->mailer->getSES()->enableVerifyPeer(false); Yii::$app->mailer->getSES()->enableKeepAlive(); foreach ($emails as $email) { Yii::$app->mail->compose('delivery/mail', []) ->setFrom('from@domain.com') ->setTo($email) ->setSubject($subject) ->setHeader('Precedence', 'bulk') ->setHeader('List-id', '<1>') ->setHeader('List-Unsubscribe', Url::to(['user/unsubscribe'], true)) ->send(); } Yii::$app->mailer->getSES()->enableKeepAlive(false);