如何获取mail()函数的错误消息? [英] How can I get the error message for the mail() function?

查看:134
本文介绍了如何获取mail()函数的错误消息?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我一直在使用PHP mail()函数。

I've been using the PHP mail() function.

如果邮件不发送由于任何原因,我想回覆错误消息。我该怎么做?

If the mail doesn't send for any reason, I'd like to echo the error message. How would I do that?

$this_mail = mail('example@example.com', 'My Subject', $message);

if($this_mail) echo 'sent!';
else echo error_message;

谢谢!

推荐答案

您可以使用 error_get_last() ,当 mail() 返回false。

You can use error_get_last() when mail() returns false.

$success = mail('example@example.com', 'My Subject', $message);
if (!$success) {
    $errorMessage = error_get_last()['message'];
}

使用 print_r(error_get_last()),你会得到这样的东西:

With print_r(error_get_last()), you get something like this:


[type] => 2

[message] = > mail():无法连接到mailserver在xxxx端口25,验证您在php.ini中的SMTP和smtp_port设置或使用ini_set()

[file] => C: \www\X\X.php

[line] => 2

[type] => 2
[message] => mail(): Failed to connect to mailserver at "x.x.x.x" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set()
[file] => C:\www\X\X.php
[line] => 2

这篇关于如何获取mail()函数的错误消息?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆