1、error_reporting(“E_ALL”)
设置错误显示等级
2、ini_set(“display_errors”, “on”)
设置让php显示错误,在关于错误显示控制中,其优先级最高
注意:配置文件php.ini中display_errors的默认值为On,代表显示错误提示,如果设置为Off,就会关闭所有的错误提示。
设置错误显示等级
下面列举一些错误报告级别:
值 常量 说明
1 E_ERROR 报告导致脚本终止运行的致命错误
2 E_WARNING 报告运行时的警告类错误(脚本不会终止运行)
4 E_PARSE 报告编译时的语法解析错误
8 E_NOTICE 报告通知类错误,脚本可能会产生错误
32767 E_ALL 报告所有的可能出现的错误(不同的PHP版本,常量E_ALL的值也可能不同)
<?php
//禁用错误报告
error_reporting(0);
//报告运行时错误
error_reporting(E_ERROR | E_WARNING | E_PARSE);
//报告所有错误
error_reporting(E_ALL);
?>
2、ini_set(“display_errors”, “on”)
设置让php显示错误,在关于错误显示控制中,其优先级最高
注意:配置文件php.ini中display_errors的默认值为On,代表显示错误提示,如果设置为Off,就会关闭所有的错误提示。
使用 error_reporting(0) 或者在函数前面加 @,可以抑制错误输出,以防止错误消息泄露敏感信息。
3、ini_set('error_log', dirname(__FILE__) . '/error_log.txt');
设置错误日志文件
4、注册错误日志文件
//注册错误日志处理函数
/**
* 错误处理函数
* @param int $errno
* @param string $errstr
* @param string $errfile
* @param int $errline
*/
function errHandler($errno,$errstr,$errfile,$errline){
$msg = "错误代码:[{$errno}] {$errstr}\r\n";
$msg .= "错误位置:{$errline} 文件 {$errfile}\r\n";
$msg .= "PHP版本 ".PHP_VERSION."(".PHP_OS.")\r\n";
LogCat::writeFileLog('errHandler.log', '错误日志', $msg);
}
set_error_handler("errHandler",E_ALL|E_STRICT);
5、针对第3点设置的error_log的路径,可以使用函数 error_log操作记录日志或者发送日志邮件