您好,我正在使用以下函数,您能指导我如何使用 Mail::failures();里面有
Mail::send('emails.caregiversetprimary', $templateArray, function($message)use($email)
{
$message->to($email, 'username')->subject('my subject');
});
Mail::failures(); < ====== this gives me black array as I have used wrong email
我使用的是 Laravel 4.1
最佳答案
tl;博士
您可以知道电子邮件已发送给哪些收件人,但不知道哪些收件人已收到电子邮件。
详情 您需要更好地了解邮件服务器的工作原理。从 Laravel 的角度来看,没有办法(或者至少不是一个简单的方法*)知道哪些收件人收到了电子邮件。这是邮件协议(protocol)如何工作的问题。您可能知道邮件已发送给哪些收件人,但不知道哪些收件人实际收到了邮件。
通过 Mail::failures()
,您可以获得 Laravel 尝试向其发送电子邮件但实际发送失败的收件人列表。但同样,如果邮件已发送,则没有直接的方法可以知道邮件是否已到达收件箱。
*如果您碰巧使用 Mailgun、Mandrill 或任何其他第 3 方软件,那么您处理的不是“本身”的邮件服务器,而是 API 服务。也许您可以检查邮件服务提供商文档来研究他们是否执行您可以通过编程方式检查的任何类型的投递跟踪。
关于laravel - 如何知道 Laravel 中的邮件发送或未发送以及哪个收件人没有收到邮件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24569078/