记录php错误但不在浏览器中显示它

时间:2013-04-24 06:29:33

标签: php error-handling

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

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

由于

4 个答案:

答案 0 :(得分:3)

确保你的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()

将它们设置为运行时选项

答案 1 :(得分: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);

答案 2 :(得分:0)

可以尝试

error_reporting(E_ERROR | E_PARSE);

答案 3 :(得分:0)

如果您想要日志自定义错误:

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

否则使用user4035 way