PHP中的错误级别 与 具体报错信息分类
1. 首先, 我们都知道PHP中的错误级别如下
共16种:
E_DEPRECATED(8192) 运行时通知,启用后将会对在未来版本中可能无法正常工作的代码给出警告。
E_USER_DEPRECATED(16384) 是由用户自己在代码中使用PHP函数 trigger_error() 来产生的
E_NOTICE(8) 运行时通知。表示脚本遇到可能会表现为错误的情况
E_USER_NOTICE(1024) 是用户自己在代码中使用PHP的trigger_error() 函数来产生的通知信息
E_WARNING(2) 运行时警告 (非致命错误)
E_USER_WARNING(512) 用户自己在代码中使用PHP的 trigger_error() 函数来产生的
E_CORE_WARNING(32) PHP初始化启动过程中由PHP引擎核心产生的警告
E_COMPILE_WARNING(128) Zend脚本引擎产生编译时警告
E_ERROR(1) 致命的运行时错误
E_USER_ERROR(256) 用户自己在代码中使用PHP的 trigger_error()函数来产生的
E_CORE_ERROR(16) 在PHP初始化启动过程中由PHP引擎核心产生的致命错误
E_COMPILE_ERROR(64) Zend脚本引擎产生的致命编译时错误
E_PARSE(4) 编译时语法解析错误。解析错误仅仅由分析器产生
E_STRICT(2048) 启用 PHP 对代码的修改建议,以确保代码具有最佳的互操作性和向前兼容性
E_RECOVERABLE_ERROR(4096) 可被捕捉的致命错误。 它表示发生了一个可能非常危险的错误,但是还没有导致PHP引擎处于不稳定的状态。 如果该错误没有被用户自定义句柄捕获 (参见 set_error_handler() ),将成为一个 E_ERROR 从而脚本会终止运行。
E_ALL(30719) 所有错误和警告信息(手册上说不包含E_STRICT, 经过测试其实是包含E_STRICT的)。
2. 以上16个错误级别, 就lant自己目前所见错误信息, 大概可以分为如下几种类型 :
Deprecated : .....
E_DEPRECATED(8192) 运行时通知,启用后将会对在未来版本中可能无法正常工作的代码给出警告。
E_USER_DEPRECATED(16384) 是由用户自己在代码中使用PHP函数 trigger_error() 来产生的
Notice error : .....
E_NOTICE(8) 运行时通知,表示脚本遇到可能会表现为错误的情况
E_USER_NOTICE(1024) 是用户自己在代码中使用PHP的trigger_error() 函数来产生的通知信息
Warning error : .....
E_WARNING(2) 运行时警告 (非致命错误)
E_CORE_WARNING(32) PHP初始化启动过程中由PHP引擎核心产生的警告
E_USER_WARNING(512) 用户自己在代码中使用PHP的 trigger_error() 函数来产生的
E_COMPILE_WARNING (128) Zend脚本引擎产生编译时警告
Fatal error : .....
E_ERROR(1) 致命的运行时错误
E_USER_ERROR(256) 用户自己在代码中使用PHP的 trigger_error()函数来产生的
E_CORE_ERROR(16) 在PHP初始化启动过程中由PHP引擎核心产生的致命错误
E_COMPILE_ERROR(64) Zend脚本引擎产生的致命编译时错误
Parse error : .....
E_PARSE(4) 编译时语法解析错误。解析错误仅仅由分析器产生
Strict Standards : .....
E_STRICT(2048) 启用 PHP 对代码的修改建议,以确保代码具有最佳的互操作性和向前兼容性
Catchable fatal error : .....
E_RECOVERABLE_ERROR(4096) 可被捕捉的致命错误。 它表示发生了一个可能非常危险的错误,但是还没有导致PHP引擎处于不稳定的状态。 如果该错误没有被用户自定义句柄捕获 (参见 set_error_handler() ),将成为一个 E_ERROR 从而脚本会终止运行。
下一篇主要会把上述所有错误在什么情况下出现, 给简单展示一下, 至少对小菜lant本人来说, 这些错误级别, 有的还真没见过, 压根不知道报出来的错到底长什么样子
网友评论