【问题标题】:PHP / Laravel 5 - Check if email is successfully received by recipientPHP / Laravel 5 - 检查收件人是否成功收到电子邮件
【发布时间】:2015-06-26 07:26:26
【问题描述】:

如何检查收件人是否收到电子邮件?在 Laravel 5 中,我尝试从 question 使用这个方法:

$status = Mail::send('blah', $data, function($message) {
    // callback function
});

if($status) {
   // email is successfully sent
}
else {
   // email is not sent
}

但是即使邮件无效,我在代码执行后仍然得到$status = 1。我也尝试过Mail::failures(),其中包含一系列失败的尝试。但它总是返回 0,表示所有邮件都发送成功。

有没有其他方法可以检查是否在 Laravel 中?

是否可以使用 PHP 检查电子邮件是否有效?由于邮件无效,所以没有发送的意义。

【问题讨论】:

  • 您无法通过我的 Laravel 邮件程序检查收件人是否收到了实际邮件。但是,您可以检查电子邮件是否从您的服务器发送,查看stackoverflow.com/questions/24772531/… Laravel 使用 SwiftMailer 发送邮件,您可以在此处阅读 SwiftMailer 类的更多功能swiftmailer.org

标签: php email laravel laravel-5 laravel-5.1


【解决方案1】:

要检查是否有人收到,请将其放在标题中:

 Disposition-Notification-To:<xxx.xxx@example.com>

但是这个选项不是很可靠,最好检查一下你的邮件是否被这样阅读:

<img src="http://yourdomain.com/received?read=<email of `receiver>">

这种方法也并不总是有效。 例如,如果电子邮件客户端没有自动下载图像。

我希望这对您有所帮助,并且是您正在寻找的内容。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-25
    • 2016-02-08
    • 2011-07-24
    • 1970-01-01
    • 1970-01-01
    • 2015-12-29
    相关资源
    最近更新 更多