2014-02-05 44 views
0

我在php.ini中設置了error_reporting = 0,但是當我創建一個包含<?php echo "error: ".error_reporting(); ?>的腳本時,它報告的錯誤級別爲7.還可以設置error_reporting值?error_reporting如何被覆蓋?

+0

解決:原來我有一個.htaccess重定向到一個腳本,它將設置error_reporting,然後包含原始文件。 – Benubird

回答

0

有許多地方這可以設置覆蓋主php.ini。運行phpinfo()並檢查本地值主值用於error_reporting。還要檢查,看是否有下面的存在,他們是否有使用error_reporting不同的設置:

  • 加載的配置文件(確保這是php.ini文件,您編輯)
  • 附加.ini文件解析
  • CUSTOM_PHP_INI
  • 不限htaccess的(如果使用Apache)

在加載的配置文件php.ini上述可以覆蓋設置不限。

+0

謝謝。我檢查了這些,並沒有包含error_reporting。其他地方可能是? – Benubird

+0

好的,這並沒有解決我的具體問題,但它回答了問題。 – Benubird

1

它可以在PHP中使用error_reporting(E_ERROR | E_WARNING | E_PARSE);

順便說一下設置。你確定你正在加載正確的php.ini文件嗎?用phpinfo()檢查它;

+0

我知道,但我的文件字面上只包含'<?php回聲「錯誤:」.error_reporting(); ?>,所以它必須被設置在別的地方。 – Benubird

0

如果您已經直接修改了php.ini,並且我在猜測您使用的是Apache,那麼您必須重新啓動才能使更改生效。

好的,重新啓動,不能正常工作?您可以嘗試使用純PHP代碼設置:

error_reporting(E_ALL | E_STRICT); 
+0

我修改後重新啓動。如果我在代碼中調用error_reporting,那麼是的,我可以改變它;但爲什麼它最初與ini文件不同? – Benubird

+0

echo ini_get('error_reporting');'?返回什麼? – CentaurWarchief

+0

ini_get('error_reporting');還回報7 – Benubird