在某些服务器上,PHP mail()
功能需要SMTP身份验证(即,我们必须提供电子邮件地址和密码)。如何通过PHP脚本确定服务器是否需要身份验证?
答案 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身份验证发送邮件来测试它?您可以轻松使用以下库之一来执行此操作: