異常處理-PHP手冊筆記
原文:異常處理 – PHP手冊筆記
PHP程式碼中所產生的異常可被throw
語句丟擲,並被catch
語句捕獲。需要進行異常處理的程式碼都必須放入try
程式碼塊內,每一個try
至少要有一個與之對應的catch
。當一個異常被丟擲時,所在程式碼塊後面的程式碼將不會繼續執行,此時PHP會嘗試查詢第一個能與之匹配的catch
。當然,PHP允許在catch
程式碼塊內再次丟擲throw
異常。如果一個異常沒有被捕獲,且未使用set_exception_handler()
作相應處理的話,PHP將會產生一個嚴重錯誤。
這裡有一個關於異常使用的示例。
<?php
function inverse($x) {
if(!$x) {
throw new Exception(`Division by zero.`);
} else {
return 1 / $x;
}
}
try {
echo inverse(5) . `<br>`;
echo inverse(0) . `<br>`;
} catch(Exception $e) {
echo `Caught exception: ` . $e->getMessage() . `<br>`;
}
echo `hello`;
還有一個異常巢狀的示例。
<?php
class MyException extends Exception {}
class Test {
public function testing() {
try {
try {
throw new MyException(`foo.`);
} catch(MyException $e) {
throw $e;
}
} catch(Exception $e) {
var_dump($e->getMessage());
}
}
}
$foo = new Test;
$foo->testing();
使用者可以用自定義的異常處理類來擴充套件PHP內建的異常處理類。
(全文完)
相關文章
- PHP異常、錯誤處理機制筆記PHP筆記
- java異常處理筆記Java筆記
- PHP 核心 - 異常處理PHP
- PHP錯誤處理和異常處理PHP
- swoft 學習筆記之異常處理筆記
- STREAMS筆記(3) REDO清理 & 異常處理筆記
- 引用-PHP手冊筆記PHP筆記
- 筆記:異常處理之report與render筆記
- Java中的異常處理(隨堂筆記)Java筆記
- PHP基礎:異常處理ExceptionPHPException
- PHP系列(七)PHP錯誤異常處理PHP
- SpringMVC學習筆記10-異常處理SpringMVC筆記
- Django筆記三十一之全域性異常處理Django筆記
- 函式-PHP手冊筆記函式PHP筆記
- 型別-PHP手冊筆記型別PHP筆記
- 型別 - PHP手冊筆記型別PHP筆記
- php錯誤與異常處理方法PHP
- 異常篇——異常處理
- 記錄Laravel異常處理類Laravel
- 異常處理
- 基本語法-PHP手冊筆記PHP筆記
- Windows核心讀書筆記——SEH結構化異常處理Windows筆記
- 異常處理 - Go 學習記錄Go
- 異常-throws的方式處理異常
- 異常處理與異常函式函式
- JavaScript 異常處理JavaScript
- ThinkPHP 異常處理PHP
- React 異常處理React
- 08、異常處理
- JAVA 異常處理Java
- JAVA異常處理Java
- Abp 異常處理
- oracle異常處理Oracle
- PowerShell 異常處理
- plsql異常處理SQL
- Swift 異常處理Swift
- JS異常處理JS
- app異常處理APP