我正在尝试禁用文件中的错误显示,只是将它们记录到日志文件中
<?php
error_reporting('E_ALL');
echo $x;
?>
当我删除error_reporting('E_ALL')时,日志文件仍然有效,但随后也会显示错误。 是否有其他方法可以执行此操作,但仅禁用特定页面上的错误报告。
答案 0 :(得分:3)
您可以创建自定义错误处理功能,并通过set_error_handler()
:
set_error_handler(function($errno, $errstr, $errfile = null, $errline = 0, $errcontext = null)
{
// Append $errstr and other useful information to a file
@file_put_contents('error_log', "ERROR: $errstr\n", FILE_APPEND);
return true; // disable regular PHP error reporting
});
答案 1 :(得分:2)