为什么80%的码农都做不了架构师?>>>
首先在.env
文件下设定队列的驱动
QUEUE_DRIVER = database
laravel5.1提供了6种驱动,sync
,databse
,beanstalkd
,sqs
,iron
,redis
具体可以在官方手册查阅.
本次选用database
作为驱动
php cli下执行
php artisan queue:table
php artisan queue:failed-table
php artisan migrate
生成了两个表,存放队列的成功的数据和失败的数据
然后在app/config/mail.php
下设置发信人的账户和名称'from' => ['address' => 'XXX@163.com', 'name' => 'fuck it']
在.env
下设置邮箱的相关信息
MAIL_DRIVER=smtp
MAIL_HOST=smtp.163.com
MAIL_PORT=25
MAIL_USERNAME=邮箱账户
MAIL_PASSWORD=邮箱密码
MAIL_ENCRYPTION=null
确认你的邮箱已经开启了SMTP服务
配置发送路由
Route::get('mail/queue',function(){
Mail::later(5,'emails.queued_email',["name" => "gewenrui"],function($message){
$message->to('收件人邮箱','名称')->subject('主题');
});
return "get emails";
});
在views/emails/queue
下新建模板
php cli 下执行php artisan queue:listen
web下访问mail/queue
这个路由
可以发现Processed: mailer@handleQueuedMessage
发送成功