PHP ini_set php.net手册display_errors示例说明

时间:2012-07-22 00:06:19

标签: php error-reporting

使用display_errors阅读设置ini_set的{​​{3}}:

<?php
echo ini_get('display_errors');

if (!ini_get('display_errors')) {
    ini_set('display_errors', '1');
}

echo ini_get('display_errors');
?>

在我们将它设置为true之前,我们是否有充分的理由来检查display_errors是否为假?当然,如果这是我们的意图,那么不打扰检查并将其设置为true会更快吗?

如果有人可以启发我,我会非常感激;我应该和error_reporting(-1);做类似的事情吗?

谢谢大家!

2 个答案:

答案 0 :(得分:4)

  

为什么我们在将它设置为true之前检查display_errors是否为假,是否有充分的理由?

这是一个例子。不,没有更深层次的原因。用“true”覆盖“true”也是有效的。

  

如果这是我们的意图,肯定会更快,没有麻烦检查并将其设置为真?

我想你很少会感觉到任何差异,不管你先检查它,还是不要。

但是:您应该使用php.ini进行此操作,更重要的是:从不在实时系统上启用display_errors

答案 1 :(得分:2)

好吧,我在我的localhost上做了一个快速测试,实际上似乎表明如果display_errors已经设置好了,那么它实际上是更快来检查它是否已经设置,而不是设置它。

这是相当微不足道的,因为我必须运行一个循环一百万次以真正注意到差异,即使那时它也不多(大约10%),但它似乎确实存在。我想这表明set_iniget_ini做了更多的工作。

也许其他人可以证实?

我想在实践中这很没用,因为你不希望display_errors在实际网站上设置为true,所以微观性能优化并不是一个问题。

除此之外,想不出有什么原因可以提前检查。