error_reporting 设置应该报告何种 PHP 错误

发表日期:2021-07-01 08:54:56 | 来源: | | 浏览(856) 分类:错误处理 函数

error_reporting

(PHP 4, PHP 5, PHP 7, PHP 8)

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.0E_STRICT 成为 E_ALL 的一部分
5.3.0引入 E_DEPRECATEDE_USER_DEPRECATED
5.2.0引入 E_RECOVERABLE_ERROR


范例


示例 #1 error_reporting() 范例

<?php 
// 关闭所有PHP错误报告error_reporting(0);
// Report simple running errorserror_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);
?>


注释

警告  

虽然 error_reporting 增强了    包含 E_STRICT 错误的能力(反之亦然),但大多数 E_STRICT 的错误是在编译时被评估的,    所以不会在文件中被报告。

小技巧  

传入 -1 的值将尽可能显示所有错误,    甚至包括将来 PHP 可能加入的新的错误级别和常量。    至 PHP 5.4,常量 E_ALL 有同样的行为。

参见


  • display_errors 指令

  • html_errors 指令

  • xmlrpc_errors 指令

  • ini_set() - 为一个配置选项设置值


集速网 copyRight © 2015-2022 宁ICP备15000399号-1 宁公网安备 64010402001209号
与其临渊羡鱼,不如退而结网
欢迎转载、分享、引用、推荐、收藏。