1. 注意(Notices)
這些都是比較小而且不嚴重的錯誤,比如去訪問一個未被定義的變數。通常,這類的錯誤是不提示給使用者的,但有時這些錯誤會影響到執行的結果。
2. 警告(Warnings)
這就是稍微嚴重一些的錯誤了,比如想要包含include()一個本身不存在的檔案。這樣的錯誤資訊會提示給使用者,但不會導致程式終止執行。
3. 致命錯誤(Fatal errors)
這些就是嚴重的錯誤,比如你想要初始化一個根本不存在的類的物件,或呼叫一個不存在的函式,這些錯誤會導致程式停止執行,PHP也會把這些錯誤展現給使用者。
不同的錯誤種類包括:
E_ERROR:通常會顯示出來,也會中斷程式執行。
E_WARNING:通常都會顯示出來,但不會中斷程式的執行。
E_NOTICE:在指令碼正常執行下發生的程式碼錯誤。
E_PARSE:語法解析錯誤。
E_CORE_ERROR:在PHP啟動時發生的致命錯誤。
E_CORE_WARNING:報告在PHP啟動時發生的非致命性錯誤。
E_COMPILE_ERROR:編譯時發生的致命錯誤,指出指令碼的錯誤。
E_USER_ERROR:使用者產生的錯誤資訊。
E_USER_WARNING:使用者產生的警告資訊。
E_USER_NOTICE:使用者引發的注意訊息。
E_STRICT:編碼標準化警告,執行時發生的錯誤。
E_RECOVERABLE_ERROR:接近致命的執行時錯誤,若未被捕獲則視同E_ERROR。
E_ALL:捕獲所有的錯誤和警告。
遮蔽PHP錯誤提示
方法一:在有可能出錯的函式前加@,然後or die("")
如:
@mysql_connect(...) or die("Database Connect Error")
方法二:編輯php.ini ,查詢"display_errors =" ,將“=”後面的值改為"off。
方法三:在php指令碼前加error_reporting(0),遮蔽所有錯誤提示。
其中,error_reporting 配置錯誤資訊回報的等級。
語法:int error_reporting(int [level]);
返回值:整數
函式種類:PHP 系統功能
原文:http://www.ecomspark.com/what-are-the-different-types-of-errors-in-php/
(翻譯:PHP100_Zeroing)
來自:PHP100
評論(1)