PHP錯誤型別及遮蔽方法

2021-09-29 08:21:04 字數 1366 閱讀 3647

程式只要在執行,就免不了會出現錯誤,錯誤很常見,比如error,notice,warning等等。之前我們介紹過《易犯的php小錯誤及相應分析》《為開發者準備的10款錯誤報告和追蹤工具》,這篇文章具體說一下php的錯誤型別和遮蔽方法。在php中,主要有以下3種錯誤型別。

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:捕獲所有的錯誤和警告。

方法一:在有可能出錯的函式前加@,然後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 系統功能

PHP錯誤型別及遮蔽方法

程式只要在執行,就免不了會出現錯誤,錯誤很常見,比如error,notice,warning等等。在php中,主要有以下3種錯誤型別。注意 notices 這些都是比較小而且不嚴重的錯誤,比如去訪問乙個未被定義的變數。通常,這類的錯誤是不提示給使用者的,但有時這些錯誤會影響到執行的結果。警告 war...

遮蔽PHP錯誤

禁用錯誤報告 error reporting 0 報告執行時錯誤 error reporting e error e warning e parse 報告所有錯誤 error reporting e all error reporting 7 設定php錯誤檢測級別 e error 致命性執行時錯 ...

PHP遮蔽錯誤的方法總結

1 遮蔽法 在php中乙個抑制錯誤的符號,即便是你開啟了報錯功能,只要在錯誤語句之前加上 符號,便可遮蔽了錯誤資訊。使用 抑制錯誤之前,會出現乙個警告錯誤。2 error reporting遮蔽法 在php檔案開始之前,我們可以加上這樣一句話errosjkfnkor reporting 0 這個函式...