当我们调用未定义的变量时,我正试图让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
文件,因为我正在修改由/etc/php5/apache2/php.ini
指定的phpinfo()
。
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)
答案 0 :(得分:0)
我认为你必须在更改php.ini文件后重新加载apache,以便看到更改生效。根据您的分布,sudo service apache2 reload
或sudo /etc/init.d/apache2 reload
之类的内容应该可以胜任。
答案 1 :(得分:0)
问题在于我在php.ini中引入了语法错误。
我认为我在phpinfo()
的问题中提到的值是PHP设置的默认值。他们没有被触及,因为PHP无法加载其ini文件。
感谢所有在此回复的人帮助调试问题。