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

What is the default value for PHP `error_reporting`?

我知道什么了 error_reporting values mean。我知道 -1 表示“全部显示”,0 表示“显示 none”。

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

正在尝试phpinfo()我明白了

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

那么,假设没有加载 php.inierror_reporting 的默认 value/behaviour 是什么?

来自 config file options

的文档

The default value is E_ALL & ~E_NOTICE & ~E_STRICT & ~E_DEPRECATED. This setting does not show E_NOTICE, E_STRICT and E_DEPRECATED level errors. You may want to show them during development.

在 PHP 8.0 中,默认更改为 E_ALL。参见 https://php.watch/versions/8.0/error-display-E_ALL

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

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

This means that all type of errors are reported except E_NOTICE, E_STRICT, and 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/