PHP 擴充套件異常
簡介
Exception 類實現了 Throwable 介面,並且是所有 Exception 類的基類,包括預定義異常和使用者定義異常。Exception 類定義了一些 final(不可重寫)方法來實現 Throwable 介面中的方法,以及 __toString() 方法,該方法可以被重寫以返回 Exception 物件的字串表示形式。
| final public function getMessage() | 異常資訊 |
| final public function getCode() | 異常程式碼 |
| final public function getFile() | 原始檔名 |
| final public function getLine() | 原始碼行號 |
| final public function getTrace() | backtrace() 的陣列 |
| final public function getPrevious() | 前一個異常 |
| final public function getTraceAsString() | 格式化的跟蹤字串 |
| public function __toString() | 格式化的顯示字串 |
如果使用者定義的異常類重新定義了建構函式,則應該呼叫 parent::__construct() 以確保所有可用資料都已正確分配。
示例
以下指令碼定義了一個名為 myException 的自定義異常類。如果 $num 的值小於 0 或大於 100,則會丟擲此型別的異常。Exception 類的 getMessage() 方法返回錯誤訊息,而 getLine() 方法返回出現異常的程式碼行號。
示例
<?php
class myException extends Exception{
function message(){
return "error : " . $this->getMessage() . " in line no " . $this->getLine();
}
}
$num=125;
try{
if ($num>100 || $num<0)
throw new myException("$num is invalid number");
else
echo "$num is a valid number";
}
catch (myException $m){
echo $m->message();
}
?>輸出
使用 $num=125 和 $num=90 執行以上程式碼,以獲取錯誤訊息和有效數字的訊息。
error : 125 is invalid number in line no 10
廣告
資料結構
網路
RDBMS
作業系統
Java
iOS
HTML
CSS
Android
Python
C 語言程式設計
C++
C#
MongoDB
MySQL
Javascript
PHP