專業施工團隊 專營室內裝潢、辦公室裝潢、店面裝潢 | 快清辦公桌吧 辦公室細菌量比廁所高400倍! |
[討論]PHP設定錯誤回報等級 |
房東:新手 發表時間:2007-05-25 |
開始寫PHP以來,就對一個小地方很感冒,就是PHP並沒有禁止使用未宣告或初始化過的變數,也沒有提出警告。大概是因為自己也算是個容易粗心大意的人吧,所以有時候會不小心將變數名稱key錯了或怎麼的,整個程式便跑出了奇怪、非預期的結果。這時要debug是非常吃力的一件事情,不禁讓我懷念起perl的use strict。 不過後來發現,這其實是PHP預設將注意信息(NOTICE)隱藏起來而已,因為會引起這些注意信息的錯誤(例如某變數未初始化),並不會導致致命的結果,所以我們可以用error_reporting()函式來自訂錯誤回報的等級。 一般PHP預設值是7或2039,也就是E_ALL & ~E_NOTICE(php.ini的寫法) 或 E_ALL ^ E_NOTICE(error_reporting函式內參數的寫法,我沒試過能不能混用,我懶嘛)。因此若是在程式內設定error_reporting(E_ALL),便可以取得所有的錯誤 /警告 /注意信息,對於神經比較大條的程式設計師來說,debug就方便多了。當然程式完成之後,你也可以用error_reporting(0)來抑制所有錯誤警告,畢竟這些訊息是不需要給使用者看到的吧(呃,當然,如果你確定程式百分之百不會出錯的話)。 p.s. 在參數的使用上,應該儘可能使用E_ALL、E_WARNING等常數,盡量不要使用數字,以避免新版本的數字跟常數的定義規則發生變化。 當然,使用ini_set(’error_reporting’,E_ALL) 也能達到與error_reporting(E_ALL) 一樣的效果,不過為什麼要自找麻煩呢? |
|
廣利不動產-板橋在地生根最實在--新板特區指名度最高、值得您信賴的好房仲 完整房訊,房屋、店面熱門精選物件,廣利不動產 優質仲介,房屋租賃、買賣資訊透明,交易真安心! 廣利不動產-新板特區指名度最高、值得您信賴的好房仲 您的托付,廣利用心為您服務 |
姓名: | |||
佈告內容: | |||
其他選項: | |||
|