我想通过PHP mail()
函数发送邮件。
PHP mail()
函数是否返回传递状态?如果没有,那么在PHP中查找我的邮件是否被发送的方法是什么?
答案 0 :(得分:2)
php mail()函数是否返回传递状态
没有。没有通用的方法来告诉电子邮件的实际交付状态。 mail()
只会告诉您传出服务器是否接受了电子邮件。
Here是请求发送通知的方法列表,但没有一种是防水的。
如果您遇到电子邮件问题,有几个相关的SO问题,其中包括this one.
答案 1 :(得分:1)
它会返回一个状态,告诉您它是否已成功传送到负责实际发送邮件的MTA。 如果没有设置接收电子邮件退回的特殊邮箱,您无法确定邮件是否已实际发送给收件人。如果您决定创建一个并设置标题以确保跳转,那么请记住,在跳转到达之前可能需要一些时间,因此在调用mail()并获得TRUE返回值之后,您只需假设邮件已被发送成功。
答案 2 :(得分:0)
您可以查看/var/log/mail.log
,这是sendmail
日志的通常位置,且仅在sendmail
中已正确配置syslog.conf
时才会显示。
# Log anything of level info or higher.
* .info;authpriv.none;cron.none
# Log all the mail messages in one place.
mail.* /var/log/maillog