Laravel Mail :: send()在循环中

时间:2015-10-07 15:08:21

标签: php email laravel swiftmailer

我可以安全地在1000次重复的循环中使用Mail::send()吗?

我的意思是在这样的循环中使用php mail()可能有问题,因为据说它为每个调用打开一个SMTP套接字但是laravel Mail::send()呢?

更新:循环本身位于队列作业中。

1 个答案:

答案 0 :(得分:0)

而不是通过循环将作业本身放在队列中(这可能导致该作业超时,具体取决于您的队列配置):

使用<div class="row"> <div class="panel-group" id="accordion"> <div class="panel panel-default"> <div class="panel-heading"> <h5 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse1"> Title1 </a> </h5> </div> <div id="collapse1" class="panel-collapse collapse in"> <div class="panel-body"> Content1 </div> </div> </div> <div class="panel panel-default"> <div class="panel-heading"> <h5 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse2"> Title2 </a> </h5> </div> <div id="collapse2" class="panel-collapse collapse in"> <div class="panel-body"> Content2 </div> </div> </div> <div class="panel panel-default"> <div class="panel-heading"> <h5 class="panel-title"> <a data-toggle="collapse" data-parent="#accordion" href="#collapse3"> Title3 </a> </h5> </div> <div id="collapse3" class="panel-collapse collapse in"> <div class="panel-body"> Content3 </div> </div> </div> </div> </div> 逐个排队每封电子邮件。这样,例如,您将在队列中有100封电子邮件,每封电子邮件一个一个地运行,直到队列为空。

最好有一种方法来管理/记录失败的队列作业,以便您可以看到哪些失败:http://laravel.com/docs/5.1/queues#dealing-with-failed-jobs