首頁 >後端開發 >PHP問題 >PHP中什麼是異常處理?如何使用異常處理中的try—catch?

PHP中什麼是異常處理?如何使用異常處理中的try—catch?

慕斯
慕斯原創
2021-06-21 14:34:302639瀏覽

上篇文章跟大家介紹了《如何運用PHP中高階語法雜項與try-catch》,本文繼續介紹PHP中什麼是異常處理?我們如何使用異常處理中的try—catch?有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

PHP中什麼是異常處理?如何使用異常處理中的try—catch?

異常處理:

#「生活中:

A計畫、B計畫

程式碼中:

程式碼依照正常的邏輯執行,如果出現異常,則執行事先準備好的另--套方案

try catch:
映射到程式碼中,try是嘗試執行某一塊程式碼,然後如果發生異常情況,那麼需要手動拋出異常(throw) ,拋出異常之後,就會被catch捕獲到。

[註] try-catch是一種結構,一個try必須至少對應-一個catch

[註] try和catch之間不能加任何程式碼

try—catch固定格式:PHP中什麼是異常處理?如何使用異常處理中的try—catch?

try {
} catch () {
}

我們還是以程式碼為例,新建一個文件,程式碼如下:

<?php
try {
  echo &#39;你是一树一树的花开<br />&#39;;
  echo &#39;是燕在梁间呢喃<br />&#39;;
  echo &#39;你是爱,是暖,是希望<br />&#39;;
} catch (Exception $e) {
}
echo &#39;你是人间的四月天&#39;;

執行結果如下:

PHP中什麼是異常處理?如何使用異常處理中的try—catch?

我們會發現,結果是按照正常順序輸出的,如果沒有異常,catch是不會直接執行的,如果說有異常,那我們就手動拋出異常,透過throw來進行拋出異常,我們以程式碼為例:

<?php
try {
  echo &#39;你是一树一树的花开<br />&#39;;
  echo &#39;是燕在梁间呢喃<br />&#39;;
  throw new Exception(&#39;出现错误了&#39;,10);
  echo &#39;你是爱,是暖,是希望<br />&#39;;
} catch (Exception $e) {
}
echo &#39;你是人间的四月天&#39;;

執行結果如下:


我們會發現,程式碼直接跳過第三句話;

因此我們的執行流程是:程式正常運行try結構中的程式碼,如果try中拋出異常,try中拋出異常後面的程式碼都不會再執行,那麼就會執行catch中的程式碼,然後繼續向下執行,如果沒有拋出異常,則執行完try中程式碼之後,程式繼續向下執行ExceptionPHP中什麼是異常處理?如何使用異常處理中的try—catch?

#其實當我們在拋出這個例外的時候catch裡面就可以捕獲我們所拋出的異常,我們要想捕獲錯誤訊息就可以透過echo裡面的getMessage(),程式碼如下:


catch (Exception $e) {
  echo $e->getMessage();
}

執行結果如下:

#官方的異常處理類,是所有異常類的基類

#getMessage:得到異常訊息

###getCode:得到異常代號#########推薦學習:###php影片教學#######

以上是PHP中什麼是異常處理?如何使用異常處理中的try—catch?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn