在 PHP 中,可以通過(guò)繼承 Exception 類來(lái)自定義異常。自定義異常類應(yīng)該包含一個(gè)構(gòu)造函數(shù),它可以接受一些參數(shù)來(lái)設(shè)置異常的消息和代碼。通常,自定義異常類應(yīng)該繼承 Exception 類的一種子類,以便可以使用父類的方法和屬性。
以下是一個(gè)自定義異常類的示例:
class CustomException extends Exception {
public function __construct($message, $code = 0, Exception $previous = null) {
parent::__construct($message, $code, $previous);
}
public function __toString() {
return __CLASS__ . ": [{$this->code}]: {$this->message}\n";
}
public function customFunction() {
echo "Custom function called\n";
}
}
使用自定義異常類時(shí),可以像使用內(nèi)置異常類一樣拋出和捕獲異常。例如:
try {
throw new CustomException("This is a custom exception");
} catch (CustomException $e) {
echo $e;
$e->customFunction();
}
輸出:
CustomException: [0]: This is a custom exception
Custom function called
在捕獲自定義異常時(shí),可以調(diào)用自定義異常類中的其他方法。