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 相关文章推荐
隐藏X-Space个人空间下方版权方法隐藏X-Space个人空间标题隐藏X-Space个人空间管理版权方法
Feb 22 PHP
一个PHP分页类的代码
May 18 PHP
PHP中全局变量global和$GLOBALS[]的区别分析
Aug 06 PHP
php统计时间和内存使用情况示例分享
Mar 13 PHP
PHP中mysql_field_type()函数用法
Nov 24 PHP
PHP+MySQL插入操作实例
Jan 21 PHP
PHP常见漏洞攻击分析
Feb 21 PHP
PHP引用返回用法示例
May 28 PHP
php5.3后静态绑定用法详解
Nov 11 PHP
php常用字符串String函数实例总结【转换,替换,计算,截取,加密】
Dec 07 PHP
yii2.0整合阿里云oss的示例代码
Sep 19 PHP
golang实现php里的serialize()和unserialize()序列和反序列方法详解
Oct 30 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的FTP学习(三)
2006/10/09 PHP
实用函数5
2007/11/08 PHP
zf框架的session会话周期及次数限制使用示例
2014/03/13 PHP
php中使用session_set_save_handler()函数把session保存到MySQL数据库实例
2014/11/06 PHP
php实现的css文件背景图片下载器代码
2014/11/11 PHP
PHP面向对象程序设计类的定义与用法简单示例
2016/12/27 PHP
laravel框架模型和数据库基础操作实例详解
2020/01/25 PHP
优秀js开源框架-jQuery使用手册(1)
2007/03/10 Javascript
JS中confirm,alert,prompt函数区别分析
2011/01/17 Javascript
JS检测图片大小的实例
2013/08/21 Javascript
Nodejs为什么选择javascript为载体语言
2015/01/13 NodeJs
jQuery使用fadeout实现元素渐隐效果的方法
2015/03/27 Javascript
javascript 实现map集合
2015/04/03 Javascript
jquery显示loading图片直到网页加载完成的方法
2015/06/25 Javascript
使用Browserify配合jQuery进行编程的超级指南
2015/07/28 Javascript
jQuery实现获取绑定自定义事件元素的方法
2015/12/02 Javascript
JavaScript+html5 canvas实现图片破碎重组动画特效
2016/02/22 Javascript
jQuery文字提示与图片提示效果实现方法
2016/07/04 Javascript
详解Vue自定义过滤器的实现
2017/01/10 Javascript
Vue+webpack项目基础配置教程
2018/02/12 Javascript
Angularjs中date过滤器失效的问题及解决方法
2018/07/06 Javascript
深入浅出理解JavaScript高级定时器原理与用法
2018/08/02 Javascript
小程序云开发实现数据库异步操作同步化
2019/05/18 Javascript
Python使用自带的ConfigParser模块读写ini配置文件
2016/06/26 Python
Pytorch入门之mnist分类实例
2018/04/14 Python
利用Pycharm断点调试Python程序的方法
2018/11/29 Python
pytorch 固定部分参数训练的方法
2019/08/17 Python
python数据预处理 :样本分布不均的解决(过采样和欠采样)
2020/02/29 Python
什么是python的列表推导式
2020/05/26 Python
html5 input元素新特性_动力节点Java学院整理
2017/07/06 HTML / CSS
请编写一个 C 函数,该函数在给定的内存区域搜索给定的字符,并返回该字符所在位置索引值
2014/09/15 面试题
数控技术应用个人求职信范文
2014/02/03 职场文书
五五普法心得体会
2014/09/04 职场文书
先进学校事迹材料
2014/12/30 职场文书
演讲稿:态度决定一切
2019/04/02 职场文书
动画「进击的巨人」第86话播出感谢绘公开
2022/03/21 日漫