无法让PHP停止显示错误

相反,大多数人的问题我不能让PHP停止显示错误,我已经在我的php.ini display_errors设置为closures,但它仍然显示他们,我也试过.htaccess,并内联ini_set和error_reportingvariables,但错误仍然显示。

我能做些什么来防止这种情况的发生?

Mac OS X Lion Server 10.7.1 MAMP使用DIY Mac服务器(diymacserver.com)

更新:

这是我的php.ini文件存储的地方…

这是我的php.ini

这是我在运行时的display_errors设置的值

这是我的display_errors的价值

这是在/etc/php.ini中写入的复制和粘贴值

display_errors = Off 

确保你编辑正确的php.ini文件,因为有两个ini文件,一个用于apache,一个用于CLI。

我最近遇到类似的行为,发现php.ini的布局非常混乱:缺省值列表等位于文件的顶部,而对设置和设置的描述则更进一步。 (请参阅PHP 7忽略ini文件,但声称加载 )。

  1. 很可能是以后的设置超越了你的。 浏览或searchini文件中的所有“display_errors”: grep -n display_errors/etc/php.ini
  2. “Loaded Configuration File”的值是多less?

display_errors指令可以在运行时使用ini_set函数进行更改。 确保没有任何代码重新打开错误显示。

另外,当你更新php.ini设置时,确保重新启动Apache。

你有一个auto_append_file=设置导致PHP在每个使用ini_set()页面上包含代码来重新打开显示?

值得注意的是,即使不显示或logging错误,仍然会对吞吐量和性能产生重大影响。

三个最明显的原因是:

1)你正在改变错误的php.ini文件(你已经解决了这个问题)。

2)php.ini设置在其他地方被覆盖 – 如果这是mod_php那么可以在httpd.conf文件或.htaccess

3)在进行更改后,您没有重新启动PHP进程(当我们正在讨论mod_php时,httpd)