欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

php error_reporting()函数详解

程序员文章站 2022-06-08 19:34:07
...

error_reporting定义和用法

error_reporting() 设置 PHP 的报错级别并返回当前级别。语法error_reporting(report_level)如果参数 report_level 未指定,当前报错级别将被返回。

下面几项是 report_level 可能的值,分14个等级供你自定义报错的方式,有数字和字符串两种参数的写法,中文说明对应如下:

数字 字符串 说明

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 致命的用户生成的错误。这就像由使用PHP函数trigger_error(程序员设置E_ERROR)
512 E_USER_WARNING 非致命的用户生成的警告。这就像由使用PHP函数trigger_error(程序员设定的一个E_WARNING警告)
1024 E_USER_NOTICE 用户生成的通知。这就像一个由使用PHP函数trigger_error(程序员一个E_NOTICE集)
2048 E_STRICT 运行时间的通知。
4096 E_RECOVERABLE_ERROR 捕捉致命的错误。这就像一个E_ERROR,但可以通过用户定义的处理捕获(又见set_error_handler())

8191 E_ALL来 所有的错误和警告,除非横向E_STRICT(E_STRICT将是PHP 6.0中E_ALL来一部分的)其实还有个最牛叉的设置参数,无视一切错误警告请将参数设置为 0 。

比较实际具体的一点用法:

error_reporting(0);//禁用错误报告

error_reporting(E_ALL);//报告所有错误任意数目的以上选项都可以用“或”来连接(用 OR 或 |),这样可以报告所有需要的各级别错误。

例如:

error_reporting(E_ERROR | E_WARNING | E_PARSE);//报告运行时错误只要屏蔽notice错误,却又不想屏蔽warning类的错误,

例如:

error_reporting(E_ALL & ~E_NOTICE);

相关标签: PHP函数