编程语言
首页 > 编程语言> > 阻止调用error_reporting()和/或ini_set(‘display_errors’,’On’)来覆盖php.ini设置

阻止调用error_reporting()和/或ini_set(‘display_errors’,’On’)来覆盖php.ini设置

作者:互联网

我在php.ini文件中有这个设置:

error_reporting = E_ERROR|E_PARSE|E_CORE_ERROR|E_COMPILE_ERROR

但我仍然每分钟在错误日志中收到数千条NOTICE和WARNING条目.我当然意识到我会更好地处理这些错误,但这不是我的代码,我没有得到报酬,我只需要摆脱那些胖的error_log文件(每天Gbs).

我搜索了代码并删除了所有error_reporting()调用,这样做了但是,有没有办法禁止error_reporting()覆盖php.ini设置?

我是否还可以阻止调用ini_set(‘display_errors’)来覆盖php.ini设置?

解决方法:

is there a way to disallow error_reporting() from overriding php.ini settings?

也许.

如果您在Apache(或通过FPM的FastCGI)下使用mod_php,则可以使用php_admin_value and php_admin_flag强制某些INI设置,使ini_set无法覆盖.

不幸的是,我不知道除了disable_functions以外的中性error_reporting的方法 – 但每次使用时都会抛出一个PHP警告.

(作为旁注,我发现很奇怪开发人员会在生产中设置错误报告级别,并且仍然会生成如此大量的日志.)

标签:error-reporting,php
来源: https://codeday.me/bug/20190903/1797180.html