php 错误级别日志

本文介绍了PHP中错误报告的不同级别,如E_ERROR、E_WARNING、E_PARSE、E_NOTICE等,并强调了如何通过error_reporting(0)和@符号来抑制错误输出,以避免敏感信息泄露。同时,讲解了如何使用ini_set()设置错误日志文件,以及error_log函数用于记录和发送错误日志的操作。
摘要由CSDN通过智能技术生成
1、error_reporting(“E_ALL”)
设置错误显示等级


下面列举一些错误报告级别:

值           常量                     说明
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操作记录日志或者发送日志邮件

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值