[英]Why isn't a setting in php.ini not being loaded?
我试图让PHP在调用未定义的变量时显示警告。
php.ini
中的行error_reporting = E_ALL | E_STRICT
error_reporting = E_ALL | E_STRICT
。
问题在于,没有将严格的警告消息输出到浏览器。
在PHP脚本中,回显E_ALL | E_STRICT
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)
我认为您必须在更改php.ini文件后重新加载apache才能看到更改生效。 根据您的发行版,诸如sudo service apache2 reload
或sudo /etc/init.d/apache2 reload
之类的工作即可完成。
问题是我在php.ini中引入了语法错误 。
我假设我在问题中从phpinfo()
中提到的值是它设置的PHP默认值。 由于PHP无法加载其ini文件,因此并未受到影响。
感谢所有在这里做出回应的人,以帮助调试问题。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.