【问题标题】:How to get delivery report from PHP mail function?如何从 PHP 邮件功能获取投递报告?
【发布时间】:2020-01-25 06:48:08
【问题描述】:

我尝试使用 PHP 邮件功能发送电子邮件,但是当我使用假电子邮件时,它没有给我任何错误,我无法确定电子邮件是否已发送,我尝试了其他类似问题答案中的所有方法,但我没有得不到我想要的

我需要一份送达报告

我的 PHP 版本是 7.3

我的 PHP 代码:

$to = 'example@somesite.com';

$subject = 'Message from ';

$message = $Message ;

$headers[] = 'MIME-Version: 1.0';
$headers[] = 'Content-type: text/html; charset=iso-8859-1';

$headers[] = 'To: '. $to;
$headers[] = 'From: <sombody@theresite.com>';

if(mail($to, $subject, $message, implode("\r\n", $headers))){
    echo 555;
}else{
   echo 444;
}

有什么方法可以获取发送成功或失败的消息吗?

【问题讨论】:

  • 来自manual: "如果邮件被成功接受投递,则返回 TRUE,否则返回 FALSE。重要的是要注意,仅仅因为邮件被接受投递,它不会表示邮件将实际到达预定目的地。"
  • 我需要一份交货报告,可以吗?

标签: php php-7 php-5.6 php-7.3


【解决方案1】:

关于交货确认:

您必须添加 Disposition-Notification-To 标头。

有关使用详情,请参阅RFC 3798

此类内容的一般提示:

使用您选择的邮件客户端生成一封带有所需参数的电子邮件,发送给您自己并查看邮件来源。

在那里,您可以找到您正在寻找的功能所添加的必要标题。然后阅读 RFC 或 google 以了解有关标头的具体细节。

参考:Delivery reports and read receipts in PHP mail

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2010-11-07
    • 2017-07-06
    • 1970-01-01
    • 1970-01-01
    • 2016-03-25
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多