目前,每当遇到问题时,我使用
总之,这是我的错误/报告环境的概述;在我的(Win7)开发机上,PHP
为什么它不会闭嘴? 再次强调,我们几乎可以将
感谢我们的朋友
好的,我只是用了这个方法:
set_error_handler()
抛出ErrorException
。此外,我将error_reporting()
设置为-1
,因此错误的数组索引会抛出异常。总之,这是我的错误/报告环境的概述;在我的(Win7)开发机上,PHP
mail()
函数在一个项目中抛出错误,因为我没有安装邮件服务器。我尝试用@
前缀来关闭它,但它仍然触发错误,从而抛出异常。我可以用try{}
包装它,但我想知道为什么它不会闭嘴。为什么它不会闭嘴? 再次强调,我们几乎可以将
mail()
从等式中移除(就我所知);我只是想知道为什么在这种情况下@
不能发挥其作用,无论是在mail()
还是其他任何函数中。我只是觉得mail()
可能有特殊情况。
感谢我们的朋友
XDebug
:
(!)ErrorException: mail() [function.mail]: Failed to connect to mailserver at "localhost" port 25, verify your "SMTP" and "smtp_port" setting in php.ini or use ini_set() in C:\xampp\htdocs\dbc_relaunch_2-0-0\mf\handlers\api\mail\send.php on line 16
好的,我只是用了这个方法:
try{
mail($args);
catch(Exception $exception){
return $failure;
}
return $success;
不是:
if(@mail($args)){
return $failure;
}
return $success;
一切都很好;我正在浏览@Pheonix链接的答案,但希望有人能够简短地解释为什么这是免费的。
@mail()
不是实际的来源。 - Bradtry{}
它,然而缺乏@
成功让我感到困惑。 - Dan Lugg