如何以异步方式或以更快的方式发送电子邮件?
我用基本方法做了一个应用程序:
const UNDEFINED = '{YaLinqo.Utils.Undefined}';
public function append ($value, $key = Utils::UNDEFINED)
{
return new self(function () use ($value, $key) {
foreach ($this as $k => $v)
yield $k => $v;
if ($key !== Utils::UNDEFINED)
yield $key => $value;
else
yield $value;
});
}
然后是视图
PHP artisan make: mail demo
public function build()
{
return $this->view('emails.demo');
}
我怎样才能更快地发送电子邮件?
答案 0 :(得分:3)
可以使用Laravel内置的queuing方法发送电子邮件:
public function index() {
$email = Auth::user()->email;
Mail::to($email)->queue(new DemoMail());
return view('home');
}
为了实现这一点,您必须先configure your queues。
一旦设置了队列,您只需要使用以下命令由后台工作人员处理队列:
php artisan queue:work
这样可以异步发送电子邮件,而不会降低访问者的页面加载时间。