4

我想创建错误日志,但不想在浏览器中显示它。

目前,当发生错误或警告/通知时,会创建日志并向浏览器显示错误,但我想强制系统不在浏览器中向站点访问者显示错误消息,而是为我创建日志。

谢谢

4

4 回答 4

5

确保你的 php.ini 中有这样的内容:

display_errors = Off
error_log = /var/log/php/error.log # Assuming you have /var/log/php directory and it's writable by httpd
error_reporting = E_ALL & ~E_DEPRECATED

或者将它们设置为运行时选项ini_set()

于 2013-04-24T06:34:29.340 回答
3

将此添加到脚本的顶部:

//don't display errors
ini_set('display_errors', 0);
//write errors to log
ini_set('log_errors', 1);
//error log file name
ini_set('log_errors', '/var/log/php/error.log');

error_reporting(E_ALL);
于 2013-04-24T06:36:11.070 回答
0

如果要记录自定义错误:

try {
    // your code here
} catch (Exception $e){
    error_log($e->getMessage(), $e->getCode(), $e->getFile().' Line '.$e->getLine());
}

否则使用user4035 方式

于 2013-04-24T06:37:11.583 回答
0

可以试试

error_reporting(E_ERROR | E_PARSE);
于 2013-04-24T06:31:32.553 回答