PHP error_reporting() 函数设置应该报告何种 PHP 错误
2023-09-27 14:25:31 时间
error_reporting
(PHP 4, PHP 5, PHP 7)
error_reporting—设置应该报告何种 PHP 错误
说明¶
error_reporting([int$level
] ) :int
error_reporting()函数能够在运行时设置error_reporting指令。 PHP 有诸多错误级别,使用该函数可以设置在脚本运行时的级别。 如果没有设置可选参数level
,error_reporting()仅会返回当前的错误报告级别。
参数¶
level
新的error_reporting级别。 可以是一个位掩码也可以是一个已命名的常量。 强烈建议使用已命名的常量,以确保兼容将来的版本。 由于错误级别的添加、整数取值范围的增加, 较久的基于整数的错误级别不会总是和预期的表现一致。
可用的错误级别常量及其实际含义描述在了predefined constants中。
返回值¶
返回旧的error_reporting级别,或者在level
参数未给出时返回当前的级别。
更新日志¶
版本 | 说明 |
---|---|
5.4.0 | E_STRICT 成为E_ALL 的一部分 |
5.3.0 | 引入E_DEPRECATED 和E_USER_DEPRECATED 。 |
5.2.0 | 引入E_RECOVERABLE_ERROR 。 |
5.0.0 | 引入E_STRICT (但不包括在E_ALL 之内)。 |
范例¶
Example #1error_reporting()范例
<?php
// 关闭所有PHP错误报告
error_reporting(0);
// Report simple running errors
error_reporting(E_ERROR | E_WARNING | E_PARSE);
// 报告 E_NOTICE也挺好 (报告未初始化的变量
// 或者捕获变量名的错误拼写)
error_reporting(E_ERROR | E_WARNING | E_PARSE | E_NOTICE);
// 除了 E_NOTICE,报告其他所有错误
error_reporting(E_ALL ^ E_NOTICE);
// 报告所有 PHP 错误 (参见 changelog)
error_reporting(E_ALL);
// 报告所有 PHP 错误
error_reporting(-1);
// 和 error_reporting(E_ALL); 一样
ini_set('error_reporting', E_ALL);
?>
注释¶
Warning
虽然error_reporting增强了 包含E_STRICT
错误的能力(反之亦然),但大多数E_STRICT
的错误是在编译时被评估的, 所以不会在文件中被报告。
Tip
传入-1的值将尽可能显示所有错误, 甚至包括将来 PHP 可能加入的新的错误级别和常量。 至 PHP 5.4,常量E_ALL
有同样的行为。
参见¶
- display_errors指令
- html_errors指令
- xmlrpc_errors指令
- ini_set()- 为一个配置选项设置值
来源:https://www.php.net/manual/zh/function.error-reporting.php
相关文章
- ElasticSearch 5.0.0 安装部署常见错误或问题
- linux 常见错误
- php循环,die/exit脚本执行控制,文件载入及错误控制
- 启动hbase时出现HMaster Aborted错误(HMaster启动之(HMaster线程的调用))
- SQL SERVER错误:已超过了锁请求超时时段。 (Microsoft SQL Server,错误: 1222)
- 最常见的 SQL 查询错误 - 第三章节
- PHP 编程中 10 个最常见的错误,你犯过几个?
- PHP 错误与异常 笔记与总结(17 )像处理异常一样处理 PHP 错误
- PHP 错误与异常 笔记与总结(16 )自定义异常处理器
- PHP 错误与异常 笔记与总结(15 )使用观察者模式处理异常信息
- PHP 错误与异常 笔记与总结(7)将错误日志以邮件方式发送
- PHP 错误与异常 笔记与总结(2)错误(Fatal)
- 华为联运游戏或应用审核驳回:HMS Core升级提示语言类型错误
- 出现( linker command failed with exit code 1)错误总结
- SwiftUI 问题解决大全之处理 Xcode 中的“Failed to prepare device for development”错误消息
- navicat连接sqlserver出现im002错误:[navicat premium] [IM002] [Microsoft][ODBC 驱动程序管理器] 未发现数据源名称并且未指定默认驱动程序
- connect ECONNREFUSED 127.0.0.1:80错误解决
- PHP开发者常犯的10个MySQL错误
- Android Studio 错误: 非法字符: 'ufeff' 解决方式|错误: 须要class, interface或enum
- linux下无法执行PHP命令,错误 php: command not found
- 致命错误:ext/standard/php_smart_str.h:没有那个文件或目录