【发布时间】:2012-11-30 02:27:41
【问题描述】:
当我们调用未定义的变量时,我试图让 PHP 显示警告。
php.ini 有error_reporting = E_ALL | E_STRICT 这一行。
问题是,严格的警告消息没有输出到浏览器。
在 PHP 脚本中,回显 E_ALL | E_STRICT 会显示值 32767。
然而error_reporting() 返回的值是22519。我在网上读到这个值实际上匹配E_ALL & ~E_NOTICE & ~E_DEPRECATED。
我的php.ini 中error_reporting 的值是否可能被覆盖?如果是这样,我将如何调查其值的设置位置? error_reporting 未在脚本中的任何位置设置。我正在编辑正确的 php.ini 文件,因为我正在编辑由 phpinfo() 指定的 /etc/php5/apache2/php.ini。
编辑
phpinfo() 包含以下信息:
Loaded Configuration File /etc/php5/apache2/php.ini
Additional .ini files parsed /etc/php5/apache2/conf.d/curl.ini, /etc/php5/apache2/conf.d/gd.ini, /etc/php5/apache2/conf.d/mcrypt.ini, /etc/php5/apache2/conf.d/mysql.ini, /etc/php5/apache2/conf.d/mysqli.ini, /etc/php5/apache2/conf.d/pdo.ini, /etc/php5/apache2/conf.d/pdo_mysql.ini
error_reporting no value (Local) no value (Master)
【问题讨论】:
-
可能是它在您的应用程序本身中被覆盖,就像在任何其他代码之前运行的配置文件中一样?在您的
phpinfo ()中是否显示error_reporting的22519? -
嗯,也可以设置在
.htaccess中。 -
这个问题怎么看不懂?
-
执行
phpinfo()并 (i) 发布 "error_reporting" 的主值和本地值 (ii) 检查 "Loaded Configuration File" 的值并确保 PHP 正在加载正确的 .ini文件。 -
您确定您正在编辑的 php.ini 文件是正在加载的文件吗?不管 phpinfo 说什么,可能有问题的脚本依赖于另一个 ini 文件
标签: php error-reporting