PHP中error_reporting函数用法详细介绍


Posted in PHP onJune 11, 2017

PHP中error_reporting函数用法详细介绍

PHP中对错误的处理会用到error_reporting函数,看到最多的是error_reporting(E_ALL ^ E_NOTICE),这个是什么意思呢?下面我们具体分析error_reporting函数。

定义用法

error_reporting() 设置 PHP 的报错级别并返回当前级别。

语法

error_reporting(report_level)

如果参数 report_level 未指定,当前报错级别将被返回。下面几项是 report_level 可能的值:

常量 描述
1 E_ERROR 致命的运行时错误。无法恢复的错误。停止执行脚本。
2 E_WARNING 非致命的运行时错误。脚本的执行并没有停止。
4 E_PARSE 编译时错误。
8 E_NOTICE 运行时提醒。
16 E_CORE_ERROR 在PHP启动时的致命错误。这就好比一个在PHP核心的E_ERROR
32 E_CORE_WARNING 在PHP启动时的非致命的错误。这就好比一个在PHP核心E_WARNING警告
64 E_COMPILE_ERROR 致命的编译时错误。 这就像由Zend脚本引擎生成了一个E_ERROR
128 E_COMPILE_WARNING 非致命的编译时错误,由Zend脚本引擎生成了一个E_WARNING警告
256 E_USER_ERROR 用户自定义的致命错误
512 E_USER_WARNING 用户自定义的警告(非致命性错误)
1024 E_USER_NOTICE 用户自定义的提醒(经常是bug,也可能是有意的)
2048 E_STRICT 编码标准化警告(建议如何修改以向前兼容)
4096 E_RECOVERABLE_ERROR 接近致命的运行时错误,若未被捕获则视同E_ERROR
8191 E_ALL 除E_STRICT外的所有错误

PHP默认不开启错误,所以你需要配置php.ini文件:

将 display_errors = Off 改为 display_errors = On

另外还要配置错误级别,因为 PHP 默认是显示所有错误的,而有些无害的提示我们不需要,所以设置如下:

将 error_reporting = E_ALL 改为 error_reporting = E_ALL & ~E_NOTICE

在 PHP 代码中运用例子:

提示:任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。例如,下面的代码关闭了用户自定义的错误和警告,执行了某些操作,然后恢复到原始的报错级别:

<?php
 
//禁用错误报告
 
error_reporting(0);
 
//报告运行时错误
 
error_reporting(E_ERROR | E_WARNING | E_PARSE);
 
//报告所有错误
 
error_reporting(E_ALL);
 
?>

了解 error_reporting 函数是如何使用的,再看 error_reporting(E_ALL ^ E_NOTICE) 这段代码,意思是显示除去 E_NOTICE 之外的所有错误信息。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

PHP 相关文章推荐
非常不错的MySQL优化的8条经验
Mar 24 PHP
Discuz批量替换帖子内容的方法(使用SQL更新数据库)
Jun 23 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(二)
Jun 23 PHP
PHP获取远程图片并保存到本地的方法
May 12 PHP
php对文件夹进行相关操作(遍历、计算大小)
Nov 04 PHP
微信公众号支付之坑:调用支付jsapi缺少参数 timeStamp等错误解决方法
Jan 12 PHP
PHP调试的强悍利器之PHPDBG
Feb 22 PHP
PHP中STDCLASS用法实例分析
Nov 11 PHP
PHP实现微信提现功能
Sep 30 PHP
centos7上编译安装php7以php-fpm方式连接apache
Nov 08 PHP
Laravel使用原生sql语句并调用的方法
Oct 09 PHP
php查看一个变量的占用内存的实例代码
Mar 29 PHP
详解PHP处理字符串类似indexof的方法函数
Jun 11 #PHP
PHP获取文件扩展名的方法实例总结
Jun 10 #PHP
PHP获取数组中单列值的方法
Jun 10 #PHP
PHP实现将多个文件中的内容合并为新文件的方法示例
Jun 10 #PHP
老生常谈php中传统验证与thinkphp框架(必看篇)
Jun 10 #PHP
全面解析PHP面向对象的三大特征
Jun 10 #PHP
PHP查询分页的实现代码
Jun 09 #PHP
You might like
PHP 和 MySQL 基础教程(一)
2006/10/09 PHP
解析centos中Apache、php、mysql 默认安装路径
2013/06/25 PHP
PHP上传图片进行等比缩放可增加水印功能
2014/01/13 PHP
PHP PDO fetch 模式各种参数的输出结果一览
2015/01/07 PHP
thinkphp分页集成实例
2017/07/24 PHP
PHP面向对象程序设计之构造方法和析构方法详解
2019/06/13 PHP
thinkphp3.2同时连接两个数据库的简单方法
2019/08/13 PHP
在JavaScript中使用inline函数的问题
2007/03/08 Javascript
Javascript 强制类型转换函数
2009/05/17 Javascript
JS代码优化技巧之通俗版(减少js体积)
2011/12/23 Javascript
js快速排序的实现代码
2013/12/08 Javascript
JQuery中使用Ajax赋值给全局变量异常的解决方法
2014/01/10 Javascript
node.js中的fs.mkdirSync方法使用说明
2014/12/17 Javascript
通过XMLHttpRequest和jQuery实现ajax的几种方式
2015/08/28 Javascript
即将发布的jQuery 3 有哪些新特性
2016/04/14 Javascript
AngularJS bootstrap启动详解及实例代码
2016/09/14 Javascript
浅谈jquery采用attr修改form表单enctype不起作用的问题
2016/11/25 Javascript
Jquery Easyui验证组件ValidateBox使用详解(20)
2016/12/18 Javascript
JavaScript运动框架 多值运动(四)
2017/05/18 Javascript
Vue中正确使用jQuery的方法
2017/10/30 jQuery
jQuery each和js forEach用法比较
2019/02/27 jQuery
关于layui flow loading占位图的实现方法
2019/09/21 Javascript
Vue可自定义tab组件用法实例
2019/10/24 Javascript
vue 自定义组件的写法与用法详解
2020/03/04 Javascript
Django对数据库进行添加与更新的例子
2019/07/12 Python
Python监控服务器实用工具psutil使用解析
2019/12/19 Python
PyQt5实现简单的计算器
2020/05/30 Python
python3实现飞机大战
2020/11/29 Python
python软件测试Jmeter性能测试JDBC Request(结合数据库)的使用详解
2021/01/26 Python
CSS3实现的渐变幻灯片效果
2020/12/07 HTML / CSS
幼儿园庆六一游园活动方案
2014/01/29 职场文书
入职担保书怎么写
2014/05/12 职场文书
化学教育专业求职信
2014/07/08 职场文书
保卫工作个人总结
2015/03/03 职场文书
体检通知范文
2015/04/21 职场文书
酒店员工管理制度
2015/08/05 职场文书