PHP 異常處理類
阿新 • • 發佈:2022-04-21
捕獲程式中的異常
try{
//出現異常和錯誤程式碼,比如檔案操作,資料庫操作
} catche(Exception $e){ // 異常類的物件
//輸出錯誤資訊
}
需要異常處理的程式碼都必須放在try 程式碼塊內,這樣就可以捕獲異常,在php程式碼中產生的異常被throw語句丟擲並被catch語句捕獲,當然PHP中的catch 程式碼塊也可以再次丟擲throw異常
當異常丟擲時,後面程式碼不會執行,PHP 就會查詢匹配的 catch。如果異常沒有捕獲,而且又沒有使用 set_exception_handler() 作處理的話,將會產生一個嚴重的錯誤,並且輸出 UncaughtException...(未捕獲異常)的提示資訊。
try{
$err = '丟擲異常資訊,並跳出 try 語句塊';
if(is_dir('./test')){
echo '這裡是一些可能會發生異常的程式碼';
}else{
throw new Exception($err, 12345); // 丟擲異常
}
echo '上面丟擲異常的話,這行程式碼將不會執行,轉而執行 catch 中的程式碼。<br>';
}catch(Exception $e){
echo '捕獲異常:'.$e->getMessage().'<br>錯誤程式碼:'.$e->getCode().'<br>';
}
echo '繼續執行 try catch 語句之外的程式碼';
輸出出來的內容
程式碼的解釋
在try 塊中判斷 有沒有test目錄, 如果沒有 使用throw 丟擲異常 ,
在catch 塊中獲取異常