PHP错误查找程序
我正在修复一个php错误的网站。我这样做的方式是通过启用错误报告和浏览站点,发现错误并修复它们。然而,我注意到,通过这种方式,我忽略了页面中不可见部分的错误,即隐藏的输入、不可见的div等。搜索源代码既不方便也不可靠 我想创建一个错误处理程序,或者将错误邮寄给我,或者抛出一个异常。前者会造成混乱,后者只允许发现一个错误,有时还需要查看源代码 这里的重点是,这些错误有数千个,因此,即使在每个错误上节省几秒钟,也可以节省大量时间PHP错误查找程序,php,Php,我正在修复一个php错误的网站。我这样做的方式是通过启用错误报告和浏览站点,发现错误并修复它们。然而,我注意到,通过这种方式,我忽略了页面中不可见部分的错误,即隐藏的输入、不可见的div等。搜索源代码既不方便也不可靠 我想创建一个错误处理程序,或者将错误邮寄给我,或者抛出一个异常。前者会造成混乱,后者只允许发现一个错误,有时还需要查看源代码 这里的重点是,这些错误有数千个,因此,即使在每个错误上节省几秒钟,也可以节省大量时间 问题是,是否有软件可以为我强调这些错误,例如FF/Chrome扩展 好
问题是,是否有软件可以为我强调这些错误,例如FF/Chrome扩展 好的,设置一个自定义错误处理程序并将错误管道传输到FireHP似乎可以做到这一点。这也显示了引用文件中的错误
set_error_handler(function ($errno, $errstr, $errfile, $errline) {
$br = php_sapi_name() == 'cli' ? '' : '<br>';
switch ($errno) {
case E_NOTICE: $errorType = 'Notice'; break;
case E_WARNING: $errorType = 'Warning'; break;
default: $errorType = 'Error'; break;
}
$message = "$errorType: $errstr $br\n in $errfile $br\n on line $errline";
if (php_sapi_name() == 'cli') {
throw new Exception($message);
} else {
\FirePHP::getInstance(true)->error($message);
}
});
set\u error\u处理程序(函数($errno、$errstr、$errfile、$errline){
$br=php_sapi_name()='cli'?'':';
交换机($errno){
案例E_通知:$errorType=‘通知’;中断;
案例E_警告:$errorType=‘警告’;中断;
默认值:$errorType='Error';break;
}
$message=“$errorType:$errstr$br\n在$errfile$br\n的第$errline行”;
如果(php_sapi_name()=“cli”){
抛出新异常($message);
}否则{
\FireHP::getInstance(true)->错误($message);
}
});
为什么不直接查看错误日志?如果您使用apache,它应该位于apaches日志文件夹中。启用错误报告
,但是禁用display\u errors
并查看服务器日志。错误日志很难查看哪些已修复,哪些未修复+该站点处于cpanel下,并且根据请求的文件将错误写入不同的位置。修复错误后,您会看到,删除错误日志
或删除已修复的行,然后保存。