zangsilu / yii2-mailer-queue
使用队列异步发送邮件.
Installs: 36
Dependents: 0
Suggesters: 0
Security: 0
Stars: 4
Watchers: 1
Forks: 2
Open Issues: 0
Type:yii2-extension
Requires
- yiisoft/yii2: *
- yiisoft/yii2-redis: ~2.0.0
This package is not auto-updated.
Last update: 2025-06-21 03:10:58 UTC
README
使用队列异步发送邮件
v1.0.0
环境
- PHP >= 5.4
- yiisoft/yii2-redis >= 2.0.0
- composer
安装
composer require zangsilu/yii2-mailer-queue
使用
- 1:配置文件配置
<?php 'components' => [ 'redis' => [ 'class' => 'yii\redis\Connection', 'hostname' => '127.0.0.1', 'port' => 6379, 'database' => 0, ], /* 邮件发送设置 */ 'mailer' => [ 'class' => 'zangsilu\mailerqueue\MailerQueue', 'redisDB'=>1,//使用redis1号库存储邮件队列 'useFileTransport' => false, //必须改为false,true只是生成邮件在runtime文件夹下,不发邮件 'transport' => [ 'class' => 'Swift_SmtpTransport', 'host' => 'smtp.163.com', 'username' => '', 'password' => '', 'port' => '465',//端口25对应tls协议 端口465对应ssl协议 'encryption' => 'ssl', ], ], ];
- 2:创建控制台指令
<?php namespace app\commands; use Yii; use yii\console\Controller; class MailerQueueController extends Controller { /** * 发送redis队列中的邮件 * php yii mailer-queue/send */ public function actionSend() { $mailer = Yii::$app->mailer; $mailer->process(); echo '发送完毕!'; } }
- 3:将指令加入lunux定时任务(每分钟检测一次)
crontab -e */1 * * * * php yii mailer-queue/send > ./log/mailer-send.log
帮助
支持
- 官方网址: http://blog2.pl39.com/
- composer: https://getcomposer.org/
License
MIT