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


Posted in PHP onJuly 08, 2014

在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 相关文章推荐
让你的网站首页自动选择语言转跳
Dec 06 PHP
php中日期加减法运算实现代码
Dec 08 PHP
PHP投票系统防刷票判断流程分析
Feb 04 PHP
php生成图形验证码几种方法小结
Aug 15 PHP
PHP中读取照片exif信息的方法
Aug 20 PHP
php获取指定日期之间的各个周和月的起止时间
Nov 24 PHP
php读取远程gzip压缩网页的方法
Dec 29 PHP
php ajax异步读取rss文档数据
Mar 29 PHP
php+mysql查询实现无限下级分类树输出示例
Oct 03 PHP
老生常谈文本文件和二进制文件的区别
Feb 27 PHP
PHP基于XMLWriter操作xml的方法分析
Jul 17 PHP
PHP7 其他修改
Mar 09 PHP
PHP获取客户端真实IP地址的5种情况分析和实现代码
Jul 08 #PHP
php+mysql不用递归实现的无限级分类实例(非递归)
Jul 08 #PHP
PHP生成短网址的3种方法代码实例
Jul 08 #PHP
PHP的fsockopen、pfsockopen函数被主机商禁用的解决办法
Jul 08 #PHP
php中函数前加&符号的作用分解
Jul 08 #PHP
PHP实现的连贯操作、链式操作实例
Jul 08 #PHP
PHP类中的魔术方法(Magic Method)简明总结
Jul 08 #PHP
You might like
php设计模式 Factory(工厂模式)
2011/06/26 PHP
PHP数据类型的总结分析
2013/06/13 PHP
PHP实现路由映射到指定控制器
2016/08/13 PHP
Yii2压缩PHP中模板代码的输出问题
2018/08/28 PHP
JS操作XML中DTD介绍及使用方法分析
2019/07/04 PHP
javascript eval函数深入认识
2009/02/21 Javascript
jQuery EasyUI API 中文文档 - ComboTree组合树
2011/10/11 Javascript
JQuery选择器特辑 详细小结
2012/05/14 Javascript
jquery zTree异步加载简单实例分享
2013/02/05 Javascript
JS的千分位算法实现思路
2013/07/31 Javascript
jquery实现盒子下拉效果示例代码
2013/09/12 Javascript
jQuery根据ID获取input、checkbox、radio、select的示例
2014/08/11 Javascript
node.js中的emitter.emit方法使用说明
2014/12/10 Javascript
取消Bootstrap的dropdown-menu点击默认关闭事件方法
2018/08/10 Javascript
详解js中let与var声明变量的区别
2020/04/05 Javascript
Vue侦测相关api的实现方法
2019/05/22 Javascript
使用layui实现的左侧菜单栏以及动态操作tab项方法
2019/09/10 Javascript
JS如何把字符串转换成json
2020/02/21 Javascript
详解Vue之事件处理
2020/07/10 Javascript
[47:55]Ti4第二日主赛事败者组 NaVi vs EG 1
2014/07/20 DOTA
[02:53]DOTA2亚洲邀请赛 NewBee战队巡礼
2015/02/03 DOTA
[39:18]完美世界DOTA2联赛PWL S3 Forest vs LBZS 第二场 12.17
2020/12/19 DOTA
Python 多核并行计算的示例代码
2017/11/07 Python
简述:我为什么选择Python而不是Matlab和R语言
2017/11/14 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Python tkinter三种布局实例详解
2020/01/06 Python
利用Tensorflow构建和训练自己的CNN来做简单的验证码识别方式
2020/01/20 Python
Python标准库shutil模块使用方法解析
2020/03/10 Python
python matplotlib模块基本图形绘制方法小结【直线,曲线,直方图,饼图等】
2020/04/26 Python
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
商务日语毕业生自荐信范文
2013/11/14 职场文书
军校制空专业毕业生自我鉴定
2013/11/16 职场文书
学校岗位设置方案
2014/01/16 职场文书
安全责任书范文
2014/03/12 职场文书
2015年幼儿园国庆节活动总结
2015/07/30 职场文书
Python 图片添加美颜效果
2022/04/28 Python