php mail:检查服务器是否需要身份验证?

时间:2010-08-29 03:50:39

标签: php

在某些服务器上,PHP mail()功能需要SMTP身份验证(即,我们必须提供电子邮件地址和密码)。如何通过PHP脚本确定服务器是否需要身份验证?

2 个答案:

答案 0 :(得分:1)

PHP mail()函数只返回true或false,表示电子邮件是否已成功传递给邮件程序。无法获取任何额外信息,因为PHP甚至不处理邮件。它将它交给sendmail或PHP.ini中配置的任何内容。

要确定失败的原因,您必须使用其他方法。我想第二次shamittomar建议Pear的邮件包。非常好。

如果在Pear中使用Mail :: send(),它将返回true或PEAR_Error()对象,您可以调用getCode()方法并确定是否存在SMTP身份验证错误

详情请见http://pear.php.net/manual/en/package.mail.mail.send.php

答案 1 :(得分:0)

为什么不通过使用SMTP身份验证发送邮件来测试它?您可以轻松使用以下库之一来执行此操作:

  1. PHPMailer
  2. Pear Mail Package