例外處理是一種程式設計技術,用於處理運行時可能發生的異常狀況或錯誤。它的主要目的包括:
在 PHP 中,使用 try...catch
块來處理異常。基本語法如下:
try {
// 可能會引發異常的程式碼
} catch (Exception $e) {
// 異常處理程式碼
}
如果 try
块中的程式碼引發了異常,控制流程就會轉移到對應的 catch
块,並執行相應的異常處理程式碼。
在 PHP 中,有幾種常見的異常類型,例如:
你可以使用 throw
關鍵字來主動引發異常,如下所示:
function divide($a, $b) {
if ($b == 0) {
throw new Exception("除數不能為零");
}
return $a / $b;
}
try {
echo divide(10, 0);
} catch (Exception $e) {
echo "錯誤訊息:" . $e->getMessage();
}
在這個例子中,如果 $b
為零,divide
函數將引發一個包含指定錯誤訊息的異常,然後在 catch
块中捕獲並輸出異常訊息。
你也可以自定義一個繼承自 Exception
的新異常類別,以便更好地組織和管理不同類型的異常情況。
class CustomException extends Exception {
public function errorMessage() {
// 自訂異常訊息
return "自定義錯誤訊息:".$this->getMessage();
}
}
function checkNumber($number) {
if ($number > 10) {
throw new CustomException("數字不能大於 10。");
}
return true;
}
try {
checkNumber(15);
} catch (CustomException $e) {
echo $e->errorMessage();
}
在這個例子中,CustomException
是自定義的異常類別,它繼承自 Exception
,並定義了一個 errorMessage
方法來返回自定義的錯誤訊息。