我正在運行 ubuntu 10.04 + nginx + php-fpm 5.4
如果我在 php.ini 中設(shè)置 display_errors = On
所有錯誤都會被打印。如果相反,我將其設(shè)置為關(guān)閉,然后使用 ini_set('display_errors, '1');直接在腳本中它們也會顯示,但不會顯示解析錯誤,只是一個空白頁面。我也嘗試使用 error_reporting 和 E_STRICT 但我找不到方法!
在這個問題被回答之后幾年,我在這里,但我找到了解決這個問題的方法。
對于我正在編寫的腳本,我創(chuàng)建了第二個腳本,其中包含 ini_set() 指令,后面是我真正正在處理的腳本的包含內(nèi)容。
這里是 test_run.php
如果您在 php.ini
中禁用 display_errors
,然后使用 ini_set()
在 PHP 腳本中啟用它,它僅在執(zhí)行包含 ini_set()
調(diào)用的行后啟用。
解析錯誤在 PHP 腳本啟動之前發(fā)生——解析 PHP 文件時(因此稱為“解析錯誤”)。
這意味著它們發(fā)生在您的 ini_set()
甚至有機會被執(zhí)行之前 - 這意味著,在您的情況下,當(dāng)解析時 display_errors
未啟用發(fā)生錯誤;因此,您不會顯示任何內(nèi)容。