laravel5.1 使用队列发送邮件

本文介绍如何在Laravel框架中配置并使用队列服务,特别关注使用database驱动来处理任务。此外,还详细介绍了如何配置邮件发送功能,并通过队列实现延时邮件的发送。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

首先在.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发送成功

转载于:https://my.oschina.net/kakoi/blog/683534

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值