【发布时间】:2012-02-14 05:28:35
【问题描述】:
我正在使用 PHP 5.3、CentOS 6.2、httpd 2.2.15、NetBeans 7.0.1(通过 ftp 远程运行)。
我想停止向浏览器打印错误消息,打印到 httpd 的 error_log 就足够了。
我认为通过 try/catch 可以自行决定如何处理错误,但它仍然会同时打印到 error_log 和浏览器。
function smic_gettext($phrase){
try{
$tr_text = $this->language_array[$phrase];
} catch(Exception $e){
error_log("Couldn't find any entry in the translation file for ".$phrase.". ".$e);
return $phrase;
}
return $tr_text;
}
我应该如何配置才能停止这种行为?
我尝试在 php.ini 中设置 display_errors=Off 和 display_errors=0。没有区别(我确实重新启动了 httpd)。
【问题讨论】:
-
生产环境应该在
php.ini文件中禁用PHP错误/通知,并且只记录到日志文件 -
旁注:PHP 中的错误不是异常(例如在 Java 中),但有一种方法可以将它们转换为异常并进行相应处理。见php.net/manual/en/class.errorexception.php
标签: php linux netbeans error-handling apache