錯誤處理

錯誤處理

一、錯誤分類

1. 語法錯誤   

 一行代碼都不執行   最好排除

2. 運行時錯誤   

依賴於數據驗證   永遠不要相信你的用戶

3. 邏輯錯誤  

程序員一輩子的痛  依賴經驗

二、錯誤級別

1. notice  提示 我們不鳥他 但是一般都要屏蔽掉

2. warning 警告  需要排除掉

3. error   錯誤  後續代碼不在執行

三、屏蔽錯誤

1. ini_set(display_errors,0);

2. error_reporting(E_ALL ^ E_NOTICE);

四、異常錯誤

i. 異常對象

 new Exception  異常處理類 得到對象

ii. 異常處理類

 Exception 他是php自動有的一個類你有異常就會產生這個類

iii. 得到錯誤信息

打印對象下面的getMessage() 方法就可以將錯誤信息輸出

iv. 拋出異常

五、try catch結構

try{

拋出異常

}catch(){

得到異常

}

注意: throw 類似return一旦執行後續代碼,不再繼續執行。

六、得到異常使用方法

//echo $a->getMessage();//getMessage() 返回錯誤信息

//echo $a->getCode();//getCode()返回異常代碼

//echo $a->getFile();//getFile() 返回異常文件名

//echo $a->getLine();// getLine() 返回異常的代碼行號

var_dump($a->getTrace());//getTrace()返回一個數組

七、多層try catch 結構

try{

//throw new HTMLException('頁面出現錯誤');

//throw new DBException('數據庫連接失敗');

throw new Exception('錯啦錯啦錯誤啦');

}catch(HTMLException $e){

echo '404 error';

}catch(DBException $e){

//偷偷記錄日誌

echo '服務器維護中......';

}catch(Exception $e){

echo '處理漏網之魚';

}

一層一層篩選 直到你抓取到異常



發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章