PHP 显示错误

示例

如果你想PHP页面上显示运行时错误,您必须启用display_errors,无论是在php.ini或使用该ini_set功能。

您可以使用error_reporting(或在ini中)接受E_*常数的函数(按位运算符组合)选择要显示的错误。

PHP可以根据html_errors设置以文本或HTML格式显示错误。

示例

ini_set("display_errors", true);
ini_set("html_errors", false); // 以纯文本显示错误
error_reporting(E_ALL & ~E_USER_NOTICE); // 显示除E_USER_NOTICE之外的所有内容

trigger_error("Pointless error"); // E_USER_NOTICE
echo $nonexistentVariable; // E_NOTICE
nonexistentFunction(); // E_ERROR

纯文本输出:(HTML格式在实现之间有所不同)

Notice: Undefined variable: nonexistentVariable in /path/to/file.php on line 7

Fatal error: Uncaught Error: Call to undefined function nonexistentFunction() in /path/to/file.php:8
Stack trace:
#0 {main}
  thrown in /path/to/file.php on line 8

注意:如果您禁用了错误报告功能php.ini并在运行时启用了错误报告功能,则将不会显示某些错误(例如解析错误),因为它们是在应用运行时设置之前发生的。

常见的处理方法error_reporting是E_ALL在开发过程中始终启用它,并display_errors在生产阶段禁用公开显示以隐藏脚本的内部。