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 相关文章推荐
使用php重新实现PHP脚本引擎内置函数
Mar 06 PHP
php下的权限算法的实现
Apr 28 PHP
php flv视频时间获取函数
Jun 29 PHP
php抓取页面与代码解析 推荐
Jul 23 PHP
不重新编译PHP为php增加openssl模块的方法
Jun 14 PHP
删除html标签得到纯文本可处理嵌套的标签
Apr 28 PHP
ThinkPHP水印功能实现修复PNG透明水印并增加JPEG图片质量可调整
Nov 05 PHP
PHP实现的进度条效果详解
May 03 PHP
Laravel4中的Validator验证扩展用法详解
Jul 26 PHP
php使用file函数、fseek函数读取大文件效率对比分析
Nov 04 PHP
thinkPHP中volist标签用法示例
Dec 06 PHP
浅谈php调用python文件
Mar 29 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
yii2.0整合阿里云oss的示例代码
2017/09/19 PHP
JavaScript 浮点数运算 精度问题
2009/10/06 Javascript
JavaScript中的null和undefined解析
2012/04/14 Javascript
JavaScript对内存分配及管理机制详细解析
2013/11/11 Javascript
AngularJS过滤器详解及示例代码
2016/08/16 Javascript
javascript数组常用方法汇总
2016/09/10 Javascript
根据Bootstrap Paginator改写的js分页插件
2016/12/25 Javascript
JavaScript中的子窗口与父窗口的互相调用问题
2017/02/08 Javascript
ES6新特性之Object的变化分析
2017/03/31 Javascript
Javascript中parseInt的正确使用方式
2018/10/17 Javascript
vue路由中前进后退的一些事儿
2019/05/18 Javascript
微信小程序 如何保持登录状态
2019/08/16 Javascript
Vue基于iview table展示图片实现点击放大
2020/08/05 Javascript
react-intl实现React国际化多语言的方法
2020/09/27 Javascript
[01:24]DOTA2上海特锦赛OG战队抵达 专车接机入驻总统套房
2016/02/23 DOTA
Python代理抓取并验证使用多线程实现
2013/05/03 Python
利用Python爬取可用的代理IP
2016/08/18 Python
用python找出那些被“标记”的照片
2017/04/20 Python
Mac 上切换Python多版本
2017/06/17 Python
Python3实现带附件的定时发送邮件功能
2020/12/22 Python
Python内置random模块生成随机数的方法
2019/05/31 Python
解决pyecharts在jupyter notebook中使用报错问题
2020/04/23 Python
pygame实现非图片按钮效果
2019/10/29 Python
详细分析Python collections工具库
2020/07/16 Python
5分钟快速掌握Python定时任务框架的实现
2021/01/26 Python
资产评估专业大学生求职信
2013/09/29 职场文书
数控技术专科生自我评价
2014/01/08 职场文书
大学学习生活感言
2014/01/18 职场文书
经典洗发水广告词
2014/03/13 职场文书
心理健康日活动总结
2014/05/08 职场文书
个人工作表现评价材料
2014/09/21 职场文书
2014年大学教师工作总结
2014/12/02 职场文书
房屋认购协议书
2015/01/29 职场文书
绍兴鲁迅故居导游词
2015/02/09 职场文书
2019大学生预备党员转正思想汇报
2019/06/21 职场文书
MySQL的存储函数与存储过程的区别解析
2022/04/08 MySQL