PHP的error_reporting错误级别变量对照表

所属分类: 网络编程 / PHP编程 阅读数: 1555
收藏 0 赞 0 分享

在PHP中所有的报错信息可以用error_reporting()这个函数来设置:

它的参数有字符串和数字两种表示方法,共14个等级,但是呢,我看使用其他数字貌似也可以,起初我以为它指的是一定的报错区间,后来,终于发现了其中的规律:

复制代码 代码如下:
error_reporting( 7 ) = error_reporting( 1+2+4)= error_reporting(E_ERROR | E_WARING | E_PARSE)

现在,我将其总结如下:

数字 常量 说明
1 E_ERROR 致命错误,脚本执行中断,就是脚本中有不可识别的东西出现
举例: Error:Invalid parameters. Invalid parameter name
2 E_WARNING 部分代码出错,但不影响整体运行
举例: Warning: require_once(E:/include/config_base.php)
4 E_PARSE  字符、变量或结束的地方写规范有误
举例:  Parse error: syntax error, unexpected $end in
 E_NOTICE 一般通知,如变量未定义等
举例:  Notice: Undefined variable: p in E:\web\index.php on line 17
16  E_CORE_ERROR PHP进程在启动时,发生了致命性错误
举例:  暂无
32  E_CORE_WARNING 在PHP启动时警告(非致命性错误)
举例:  暂无
64 E_COMPILE_ERROR 编译时致命性错误
举例:  暂无
128 E_COMPILE_WARNING 编译时警告级错误
举例:  暂无
256 E_USER_ERROR  用户自定义的错误消息
举例:  暂无
512 E_USER_WARNING 用户自定义的警告消息
举例:  暂无
1024 E_USER_NOTICE  用户自定义的提醒消息
举例:  暂无
2047 E_ALL 以上所有的报错信息,但不包括E_STRICT的报错信息
举例:  暂无
2048 E_STRICT 编码标准化警告,允许PHP建议如何修改代码以确保最佳的互操作性向前兼容性。

error_reporting 变量的默认值是  E_ALL & ~E_NOTICE
开发时,最佳的值为: E_ALL | E_STRICT

如果设置为:error_reporting(E_ALL | E_STRICT),则表示记录所有的错误信息
可能会导致网站出现一大堆的错误代码;但是对于程序员来说应该说是一件好事,可以把代码优化到最优; 一些非致命性错误虽然不影响程序的运行,但是会加重PHP的负担.


最后,晒出英文版的对照表:

1 E_ERROR Fatal run-time errors. Errors that can not be recovered from. Execution of the script is halted
2 E_WARNING Non-fatal run-time errors. Execution of the script is not halted
4 E_PARSE Compile-time parse errors. Parse errors should only be generated by the parser
8 E_NOTICE Run-time notices. The script found something that might be an error, but could also happen when running a script normally
16 E_CORE_ERROR Fatal errors at PHP startup. This is like an E_ERROR in the PHP core
32 E_CORE_WARNING Non-fatal errors at PHP startup. This is like an E_WARNING in the PHP core
64 E_COMPILE_ERROR Fatal compile-time errors. This is like an E_ERROR generated by the Zend Scripting Engine
128 E_COMPILE_WARNING Non-fatal compile-time errors. This is like an E_WARNING generated by the Zend Scripting Engine
256 E_USER_ERROR Fatal user-generated error. This is like an E_ERROR set by the programmer using the PHP function trigger_error()
512 E_USER_WARNING Non-fatal user-generated warning. This is like an E_WARNING set by the programmer using the PHP function trigger_error()
1024 E_USER_NOTICE User-generated notice. This is like an E_NOTICE set by the programmer using the PHP function trigger_error()
2048 E_STRICT Run-time notices. PHP suggest changes to your code to help interoperability and compatibility of the code
4096 E_RECOVERABLE_ERROR Catchable fatal error. This is like an E_ERROR but can be caught by a user defined handle (see also set_error_handler())
8191 E_ALL All errors and warnings, except level E_STRICT (E_STRICT will be part of E_ALL as of PHP 6.0)
更多精彩内容其他人还在看

浅析PHP 中move_uploaded_file 上传中文文件名失败

这篇文章主要介绍了PHP 中move_uploaded_file 上传中文文件名失败的原因分析及解决方法 ,需要的朋友可以参考下
收藏 0 赞 0 分享

CentOS7编译安装php7.1的教程详解

这篇文章主要介绍了CentOS7编译安装php7.1的教程详解,非常不错,具有一定的参考借鉴价值 ,需要的朋友可以参考下
收藏 0 赞 0 分享

PHP信号处理机制的操作代码讲解

在本篇文章里小编给大家分享了关于PHP信号处理机制的操作的相关知识点内容,需要的朋友们学习下。
收藏 0 赞 0 分享

ThinkPHP3.2.3框架邮件发送功能图文实例详解

这篇文章主要介绍了ThinkPHP3.2.3框架邮件发送功能,结合图文与实例形式详细分析了基于thinkPHP框架进行邮件发送的相关原理、配置及操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

一文掌握PHP Xdebug 本地与远程调试(小结)

这篇文章主要介绍了一文掌握PHP Xdebug 本地与远程调试(小结),小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

Laravel路由研究之domain解决多域名问题的方法示例

这篇文章主要介绍了Laravel 路由研究之domain解决多域名问题的方法示例,小编觉得挺不错的,现在分享给大家,也给大家做个参考。一起跟随小编过来看看吧
收藏 0 赞 0 分享

PHP设计模式之策略模式原理与用法实例分析

这篇文章主要介绍了PHP设计模式之策略模式原理与用法,结合实例形式较为详细的分析了策略模式的概念、原理及php实现与使用策略模式的相关操作技巧,需要的朋友可以参考下
收藏 0 赞 0 分享

php使用lua+redis实现限流,计数器模式,令牌桶模式

这篇文章主要介绍了php使用lua+redis实现限流,计数器模式,令牌桶模式,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
收藏 0 赞 0 分享

Laravel多域名下字段验证的方法

这篇文章主要给大家介绍了关于Laravel多域名下字段验证的相关资料,文中通过示例代码介绍的非常详细,对大家学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
收藏 0 赞 0 分享

PHP中quotemeta()函数的用法讲解

今天小编就为大家分享一篇关于PHP中quotemeta()函数的用法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧
收藏 0 赞 0 分享
查看更多