PHP 5 提供了一種新的面向對象的錯誤處理方法。
使用思路如下:
1、Try - 使用異常的函數應該位於 "try" 代碼塊內。如果沒有觸發異常,則代碼將照常繼續執行。但是如果異常被觸發,會拋出一個異常。
2、Throw - 這里規定如何觸發異常。每一個 "throw" 必須對應至少一個 "catch"
3、Catch - "catch" 代碼塊會捕獲異常,並創建一個包含異常信息的對象
親測過,代碼可直接復制運行,舉例如下:
1 try { 2 throw new Exception('something wrong first'); 3 echo 'Come Here-1'; 4 } catch (Exception $e) { 5 echo '捕捉到異常!<br/>'; 6 echo '出錯文件:'.$e->getFile().'<br/>'; 7 echo '出錯行數:'.$e->getLine().'<br/>'; 8 echo '出錯信息:'.$e->getMessage().'<br/>'; 9 throw new Exception('something wrong second'); 10 } 11 echo 'Come Here-2';
輸出結果:
1 捕捉到異常! 2 出錯文件:E:\wwwroot\b.php 3 出錯行數:2 4 出錯信息:something wrong first
運行總結:
1、line2拋了異常,line3不執行,執行catch里面的line5到line8
2、如果加上line9,則line11不執行,如果去掉line9,則line11會執行
用最簡單的例子熟悉了try,throw,catch的運作原理之后,在實際項目中就可以靈活使用了!