天天看點

辛星與您一起解讀下PHP的報錯級别

     其實報錯級别這個東西算是一個很基礎的東西了,我們可以用error_reporting()這個函數去設定PHP的報錯級别,并且用它傳回目前的報錯級别,比如我們運作程式如下代碼:

<?php
 var_dump(error_reporting());
           

它的輸出是:int 32727 

這就是它的報錯級别,隻是是用數字的形式,其實我們都知道這是他定義的一個常量,下面就是一些在PHP的報錯級别的常見常量的定義了:

E_ALL: 報告所有錯誤。

E_ERROR:緻命性錯誤

E_WARNING:警告

E_PARSE 編譯時解析錯誤

E_NOTICE運作時提醒資訊。

E_CORE_ERROR :PHP在啟動初始化的時候發生的錯誤

E_CORE_WARNING:PHP在啟動初始化時的警告

E_COMPILE_ERROR :編譯時緻命錯誤

E_COMPILE_WARNING :編譯時警告

E_USER_ERROR :使用者産生錯誤

E_USER_WARING:使用者産生的警告

E_USER_NOTICE:使用者産生的提醒

它們之間是支援按位運算的,也就是可以把它們當成邏輯去運算。

其中參數為0表示禁用錯誤報告,參數為E_ALL ^ E_NOTICE表示除去警告之外的所有錯誤資訊。

比如看如下代碼:

<?php
echo ;
error_reporting(0);
echo ;
           

很明顯,這回産生一個編譯錯誤,但是我們在後面設定了error_reporting(0)之後就不會再出現這種情況了,是以如下錯誤資訊隻會誤報一次:

Parse error: syntax error, unexpected ';' in D:\MyApp\wamp\www\err.php on line 2
           

報錯級别總的來說并不難,非常基礎,也是怕遺忘,是以寫一下。。。