在使用php进行开发时,经常需要用到日志记录功能。php提供了error_log函数,可以将错误日志保存到本地或远程服务器。而错误日志分为不同的错误级别,包括:
- E_ERROR:严重错误,系统无法继续执行下去,需要立即停止执行。
- E_WARNING:警告级别错误,系统可以继续执行下去。
- E_NOTICE:通知级别错误,一些值在赋值之前被使用了。
- E_STRICT:编码标准的提示,用于标记一些代码编写不规范的地方。
- E_DEPRECATED:在未来版本中将删除的过时功能的提示。
- E_PARSE:语法分析错误,代码无法解析。
下面,我们来一一了解这些错误级别。
- E_ERROR
E_ERROR错误级别是PHP中最高级别的错误,通常会导致PHP程序无法继续运行。比如一个未定义的变量、调用不存在的方法或函数等。这种错误级别通常需要使用trigger_error或set_error_handler函数来处理。
下面是一段使用trigger_error函数记录错误日志的代码示例:
if(!function_exists('test')){
trigger_error('函数test不存在', E_USER_ERROR);
}- E_WARNING
E_WARNING错误级别通常是代码中存在一些小问题,不会使PHP程序无法继续运行。比如调用不存在的类或方法、调用一个不具备可访问性的方法等。这种级别的错误通常可以使用try...catch语句来处理。
立即学习“PHP免费学习笔记(深入)”;
下面是一段使用try...catch捕获警告错误的代码示例:
try{
$test = new Test();
} catch (Error $e) {
error_log($e->getMessage());
}- E_NOTICE
E_NOTICE错误级别通常是一些重要的信息没有被正确地处理。比如在使用未初始化的变量、对未定义的常量进行操作等。这种级别的错误通常可以通过使用isset函数来处理。
1.修正会员卡升级会员级别的判定方式2.修正了订单换货状态用户管理中心订单不显示的问题3.完善后台积分设置数据格式验证方式4.优化前台分页程序5.解决综合模板找回密码提示错误问题6.优化商品支付模块程序7.重写优惠卷代码8.优惠卷使用方式改为1卡1号的方式9.优惠卷支持打印功能10.重新支付模块,所有支付方式支持自动对账11.去掉规格库存显示12.修正部分功能商品价格显示4个0的问题13.全新的支
下面是一段使用isset函数处理通知错误的代码示例:
if (!isset($test)) {
error_log('未定义的变量');
}- E_STRICT
E_STRICT错误级别通常是用于提示PHP程序员编写不规范的代码。比如在使用不推荐的语法、不恰当的类型提示等。这种级别的错误可以通过修改代码来解决。
- E_DEPRECATED
E_DEPRECATED错误级别通常是用于提示PHP程序员,某些功能在未来的版本中将被删除。比如某个函数的参数已经发生了变化但是还在使用旧版本的函数参数。这种级别的错误可以通过修改代码来解决。
- E_PARSE
E_PARSE错误级别是语法分析错误,在PHP程序正确性检查的过程中检测到某个语法错误。通常会导致程序无法解析执行。比如在语句末尾忘记输入分号、使用了无效的关键字等。这种级别的错误可以通过修改代码解决。
在编写PHP程序时,我们应该合理地处理各种错误级别,及时记录错误信息,保障程序的健壮性和稳定性。










