Laravel如何安排邮件以便以后发送?

mih*_*iho 6 php laravel laravel-queue laravel-mail

Laravel文档描述的能力来安排邮件后交货,通过下面的例子:

$when = Carbon::now()->addMinutes(10);

Mail::to($request->user())
    ->cc($moreUsers)
    ->bcc($evenMoreUsers)
    ->later($when, new OrderShipped($order));
Run Code Online (Sandbox Code Playgroud)

文档中没有提到进一步的配置(没有数据库表或该功能似乎需要的任何内容).但我想知道,这是怎么回事?Laravel在哪里存储信息以供以后检索.

此功能在较长时间内是否可靠?我想在注册后3天向用户发送邮件.可能邮件丢失了吗?例如,重新启动服务器?

San*_*esh 9

来自您链接的同一个文档

此方法将自动将作业推送到队列,以便在后台发送消息.当然,在使用此功能之前,您需要配置队列.

Laravel使用队列来处理这个问题.您需要在您发送的mailable中启用排队.邮件延迟发送也使用相同的队列.要使用此功能,您需要设置队列设置并运行队列侦听器或工作程序来处理队列.检查队列文档以获取有关此内容的更多信息.

https://laravel.com/docs/5.4/queues