PHP 'error_reporting' 的默认值是多少?

What is the default value for PHP `error_reporting`?

提问人:Kamafeather 提问时间:9/22/2021 更新时间:9/24/2021 访问量:1831

问:

我知道error_reporting值是什么意思。我知道的意思是“全部显示”,意思是“不显示”。-10

但是,当用户未指定任何内容时,没有指定默认设置的值是什么。

尝试我看phpinfo()

...
Configuration File (php.ini) Path => /usr/local/etc/php
Loaded Configuration File => (none)
...

那么,在没有加载的情况下,error_reporting的默认值/行为是什么?php.ini

PHP 文档 默认 错误报告 php-8

评论


答:

5赞 Barmar 9/22/2021 #1

配置文件选项的文档

默认值为 。此设置不显示 、 和电平错误。您可能希望在开发过程中显示它们。E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATEDE_NOTICEE_STRICTE_DEPRECATED

在 PHP 8.0 中,默认值更改为 。查看 https://php.watch/versions/8.0/error-display-E_ALLE_ALL

评论

1赞 Shlomtzion 9/22/2021
你可以在这里阅读所有关于它的信息:php.watch/versions/8.0/error-display-E_ALL
2赞 Engr Talha 9/23/2021 #2

在 PHP 5.3 或更高版本中,但在 PHP 8.0 之前,默认error_reporting级别为:

error_reporting = E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED

这意味着报告所有类型的错误,但E_NOTICE E_STRICT,E_DEPRECATED。

从 PHP 8.0 开始,默认的error_reporting级别是 E_ALL。

error_reporting = E_ALL

看一看: https://lindevs.com/default-error-reporting-level-is-e_all-in-php-8-0/