1. 程式人生 > >php執行時不顯示錯誤資訊?

php執行時不顯示錯誤資訊?

如果你安裝好了,那麼在C:windows下有個php.ini,應該改這個
如果沒安裝好,那麼把php.ini-dist改為php.ini 複製到C:windows下面
要顯示錯誤資訊,處理改設定,還要該IE設定
工具/internet選項/高階/拉到最下面有個顯示友好的http錯誤資訊,去掉勾.

 

php.ini 檔案中有許多配置設定。您應當已經設定好自己的 php.ini 檔案並把它放在合適的目錄中,就像在 Linux 上安裝 PHP 和 Apache 2 的文件說明中所示的那樣(。在除錯 PHP 應用程式時,應當知道兩個配置變數。下面是這兩個變數及其預設值:

display_errors = Off
            error_reporting = E_ALL
            

 

通過在 php.ini 檔案中搜索它們,可以發現這兩個變數當前的預設值。display_errors 變數的目的很明顯 —— 它告訴 PHP 是否顯示錯誤。預設值是 Off。但是,要讓開發過程更加輕鬆,請把這個值設為 On

display_errors = On
            

 

error_reporting 變數的預設值是 E_ALL。這個設定會顯示從不良編碼實踐到無害提示到出錯的所有資訊。E_ALL 對於開發過程來說有點太細,因為它在螢幕上為一些小事(例如變數未初始化)也顯示提示,會搞糟瀏覽器的輸出。我只想看到錯誤和不良編碼實踐,但是不想看到無害的提示。所以,請用以下值代替 error_reporting

的預設值:

error_reporting = E_ALL & ~E_NOTICE
            

 

重新啟動 Apache,就全部設定好了。接下來,將學習如何在 Apache 上做同樣的事。

依賴於 Apache 正在做的工作,在 PHP 中開啟錯誤報告可能沒法工作,因為在計算機上可能有多個 PHP 版本。有時很難區分 Apache 正在使用哪個 PHP 版本,因為 Apache 只能檢視一個 php.ini 檔案。不知道 Apache 正在使用哪個 php.ini 檔案配置自己是一個安全問題。但是,有一種方法可以在 Apache 中配置 PHP 變數,從而保證設定了正確的出錯級別。

而且,最好知道如何在伺服器端設定這些配置變數,以否決或搶佔 php.ini 檔案,從而提供更高級別的安全性。

在配置 Apache 時,應該已經接觸過 <apache2-install-dir>/conf/httpd.conf 中 http.conf 檔案中的基本配置。

要做在 php.ini 檔案中已經做過的事,請把下列各行新增到 httpd.conf,覆蓋任何 php.ini 檔案:

php_flag  display_errors        on
            php_value error_reporting       2039
            

 

這會覆蓋在 php.ini 檔案中為 display_errors 已經設定的標誌,以及 error_reporting 的值。值 2039 代表 E_ALL & ~E_NOTICE。如果願意採用 E_ALL,請把值設為 2047。同樣,還是要重啟 Apache。

php執行時不顯示錯誤資訊。如何遮蔽php出錯資訊? 問題補充: 最近學習php,我用的是網上下載的AppServ執行環境,我在網上查詢資料說要修改php.ini檔案,我只在php5資料夾下看到了php.ini-dist檔案,用記事本開啟,把display_error=on怎麼還是不能顯示出錯資訊啊?



如果你安裝好了,那麼在C:windows下有個php.ini,應該改這個
如果沒安裝好,那麼把php.ini-dist改為php.ini 複製到C:windows下面
要顯示錯誤資訊,處理改設定,還要該IE設定
工具/internet選項/高階/拉到最下面有個顯示友好的http錯誤資訊,去掉勾

In the productive environment, it is suggested that you set display_errors=Off for security reasons. however, if you don't wanna change php.ini, an alternative way to do the same thing is to add 'error_reporting(0);' at the top of your specific program.


轉自:http://wangxiang2010.blog.51cto.com/287785/d-6