一般來說,大部分支援 php 的伺服器,為了不過度洩漏一些不必要的資訊,通常會在 php.ini 中將 display_errors 設定為 off。
這樣設定的意義,在於若 php 程式發生錯誤時,不會將錯誤訊息傾印在網頁當中。這樣做當然在某種程度上確保了安全性,不會無意間洩漏某些程式的寫法而導致有心人士的利用;但相對來說,如果有新寫的程式需要 debug 時,卻常常因為很難即時確認這些錯誤訊息,而導致一些很蠢的小錯誤也要抓個半天(好吧,也許只有我這麼笨)。
難道每次要 debug 新程式的時候,都要到 php.ini 中打開該選項,然後重新啟動伺服器嗎?當然不需要這麼遜!
只要在程式開頭加上以下兩行設定:
ini_set('display_errors', '1');
error_reporting(E_ALL);
這樣就可以忽略 php.ini 中的設定顯示完整的錯誤訊息,並且只對這個程式有效,不會影響其他程式的運作,相當方便喔。
還有一個方式, 就是把錯誤記到log檔,
可以獨立建立一個php_error.log供自己參考
php.ini裡也有敘述, 之前公司是這麼做,
提供一個方式交流一下..ccc
評論由 flower 發表 @ 十一月 24 日, 2006 11:28 上午
之前一直是用這個方法,
不過後來實在受不了一直重新載入這個 log 檔,
加上主機在遠端,要重讀這個檔案還要花時間花頻寬來處理,
所以乾脆找個方法讓她直接顯示在網頁中。
評論由 C.H.Weng 發表 @ 十一月 24 日, 2006 4:01 下午
php中改變ini設置方法...
在 php 中, 有時需要調整 ini 內的設定值, 以獲得某些特性, 例如將 display_errors 參數設置為 Off 時, 做為錯誤資訊隱藏, 但是在寫作或除錯程式時, 希望能將此參數設置為 On, 設置完成後又要重起 ap...
引用至 My Program @ 十二月 11 日, 2006 12:18 上午
謝謝提供好用資訊, 已整理成文章:
php中改變ini設置方法
http://diary.tw/tim/67
評論由 tim 發表 @ 十二月 11 日, 2006 12:20 上午
[...] http://blog.chweng.idv.tw/archives/413 [...]
引用至 PHP ERROR DISPLAY SOLUTION « Enny 543 @ 九月 7 日, 2007 4:25 下午