如何覆盖error_reporting?

How can error_reporting be overridden?

提问人:Benubird 提问时间:2/6/2014 最后编辑:Benubird 更新时间:11/23/2022 访问量:1533

问:

我已经设置了php.ini,但是当我创建一个包含它的脚本时,报告的错误级别为 7。还有什么可以设置error_reporting值?error_reporting = 0<?php echo "error: ".error_reporting(); ?>

PHP 错误报告

评论

0赞 Benubird 2/6/2014
已解决:原来我有一个 .htaccess 重定向到一个脚本,该脚本将设置error_reporting,然后包含原始文件。

答:

1赞 lchachurski 2/6/2014 #1

它可以在 PHP 中设置error_reporting(E_ERROR | E_WARNING | E_PARSE);

顺便说一句。您确定要加载正确的 php.ini 文件吗?用 phpinfo() 检查它;

评论

0赞 Benubird 2/6/2014
我知道,但我的文件实际上只包含 ,所以它必须设置在其他地方。<?php echo "error: ".error_reporting(); ?>
0赞 Andrey 2/6/2014 #2

如果您直接修改了php.ini,并且我猜您使用的是 apache,则必须重新启动它才能使更改生效。

好吧,重新启动但不工作?您可以尝试使用纯 PHP 代码进行设置:

error_reporting(E_ALL | E_STRICT);

评论

0赞 Benubird 2/6/2014
修改后我确实重新启动了。如果我在代码中调用error_reporting,那么是的,我可以更改它;但是为什么它最初与 INI 文件不同呢?
0赞 Andrey 2/6/2014
回报是什么?echo ini_get('error_reporting');
0赞 AbraCadaver 2/6/2014 #3

有很多地方可以设置它来覆盖主 .运行并检查error_reporting的本地值和主值。此外,请检查是否存在以下任何一项,以及它们是否具有不同的error_reporting设置:php.iniphpinfo()

  • 加载的配置文件(确保这是您编辑的php.ini文件)
  • 分析的其他.ini文件
  • CUSTOM_PHP_INI
  • 任何 .htaccess(如果使用 Apache)

以上任何一项都可以覆盖 Loaded Configuration File 中的设置。php.ini

评论

0赞 Benubird 2/6/2014
谢谢。我检查了这些,没有一个包含error_reporting。它可能在其他地方?
0赞 Benubird 2/6/2014
好吧,这并没有解决我的具体问题,但它回答了提出的问题。