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 相关文章推荐
通过文字传递创建的图形按钮
Oct 09 PHP
解析PHP中intval()等int转换时的意外异常情况
Jun 21 PHP
php实现把数组按指定的个数分隔
Feb 17 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
Apr 23 PHP
PHP采集类Snoopy抓取图片实例
Jun 19 PHP
php通过记录IP来防止表单重复提交方法分析
Dec 16 PHP
推荐几个开源的微信开发项目
Dec 28 PHP
PHP中strnatcmp()函数“自然排序算法”进行字符串比较用法分析(对比strcmp函数)
Jan 07 PHP
linux下为php添加iconv模块的方法
Feb 28 PHP
CI(CodeIgniter)框架中URL特殊字符处理与SQL注入隐患分析
Feb 28 PHP
PHP随机生成中文段落示例【测试网站内容时使用】
Apr 26 PHP
php将xml转化对象的实例详解
Nov 17 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
虫族 Zerg 热键控制
2020/03/14 星际争霸
php中3des加密代码(完全与.net中的兼容)
2012/08/02 PHP
WampServer下安装多个版本的PHP、mysql、apache图文教程
2015/01/07 PHP
详解Yii实现分页的两种方法
2017/01/14 PHP
php获取给定日期相差天数的方法分析
2017/02/20 PHP
PHP调用其他文件中的类
2018/04/02 PHP
用javascript实现计算两个日期的间隔天数
2007/08/14 Javascript
一个基于jquery的文本框记数器
2012/09/19 Javascript
jquery简单实现滚动条下拉DIV固定在头部不动
2013/11/25 Javascript
鼠标悬浮停留三秒后自动显示大图js代码
2014/09/09 Javascript
js读写json文件实例代码
2014/10/21 Javascript
Node.js中用D3.js的方法示例
2017/01/16 Javascript
微信小程序 定位到当前城市实现实例代码
2017/02/23 Javascript
详解Vue单元测试Karma+Mocha学习笔记
2018/01/31 Javascript
Django+Vue实现WebSocket连接的示例代码
2019/05/28 Javascript
微信小程序全局变量GLOBALDATA的定义和调用过程解析
2019/09/23 Javascript
Vue-CLI与Vuex使用方法实例分析
2020/01/06 Javascript
vue iview 隐藏Table组件里的某一列操作
2020/11/13 Javascript
JavaScript中跨域问题的深入理解
2021/03/04 Javascript
有关wxpython pyqt内存占用问题分析
2014/06/09 Python
python通过pil将图片转换成黑白效果的方法
2015/03/16 Python
python实现提取百度搜索结果的方法
2015/05/19 Python
python实现K近邻回归,采用等权重和不等权重的方法
2019/01/23 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
pandas实现to_sql将DataFrame保存到数据库中
2019/07/03 Python
Python Gitlab Api 使用方法
2019/08/28 Python
keras多显卡训练方式
2020/06/10 Python
python 多线程爬取壁纸网站的示例
2021/02/20 Python
英国袜子店:Sock Shop
2017/01/11 全球购物
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
介绍一下RMI的基本概念
2016/12/17 面试题
超市七夕促销活动方案
2014/08/28 职场文书
支部书记四风问题对照检查材料
2014/10/04 职场文书
圣诞晚会主持词
2015/07/01 职场文书
市场营销计划书
2019/04/24 职场文书
Pytorch数据读取之Dataset和DataLoader知识总结
2021/05/23 Python