php邮件功能中的电子邮件传递失败

时间:2012-02-16 09:44:26

标签: php email sendmail

我使用PHP mail()函数发送电子邮件。是否有可能发现电子邮件是发送还是失败?

5 个答案:

答案 0 :(得分:1)

不能确定是否收到了电子邮件:电子邮件不是保证传送机制。

除非您在电子邮件中包含某种响应链接,但收件人必须单击该链接,否则为“

答案 1 :(得分:1)

尝试包括X-Failed-Recipients:<<电子邮件>>

答案 2 :(得分:0)

PHP Mail函数返回一个布尔值。因此,您可以轻松地知道邮件是否已被接受以进行传递。但您无法知道它是否是由邮件服务器(SMTP)发送的

bool mail ( string $to , string $subject , string $message [, string $additional_headers [, string $additional_parameters ]] )
  

如果邮件成功接受传递,则返回TRUE,FALSE   否则。

     

重要的是要注意,因为邮件被接受了   交付,并不意味着邮件实际上会达到预期的目的   目的地。

链接:http://php.net/manual/en/function.mail.php

代码

if(mail(...)){ ... }
else{ ... }

答案 3 :(得分:0)

不,没有检查邮件日志就不可能。如果邮件程序接收了您的邮件,则邮件功能仅返回true,但如果收件人已收到邮件,则不会向您提供信息。

  

如果邮件成功接受传递,则返回TRUE,FALSE   否则。

     

重要的是要注意,仅仅因为邮件被接受传递,这并不意味着邮件实际上会到达   预定的目的地。

See here.

答案 4 :(得分:0)

您在这里...使用PHPmailer发送电子邮件的基本信息:

if(!$mail->Send()){
   echo "Emails Sending Failed!";
}else{
   echo "Emails Successfully Sent!";
}

为了找到额外的失败信息,以下代码的附加组件将有助于......

echo $mail->ErrorInfo;