您好,登錄后才能下訂單哦!
這篇文章主要介紹php7拋出異常的方法,文中介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們一定要看完!
PHP 7 改變了大多數錯誤的報告方式。不同于 PHP 5 的傳統錯誤報告機制,現在大多數錯誤被作為 Error 異常拋出。
這種 Error 異常可以像普通異常一樣被 try / catch 塊所捕獲。如果沒有匹配的 try / catch 塊, 則調用異常處理函數(由 set_exception_handler() 注冊)進行處理。
如果尚未注冊異常處理函數,則按照傳統方式處理:被報告為一個致命錯誤(Fatal Error)。
Error 類并不是從 Exception 類 擴展出來的,所以用 catch (Exception $e) { ... } 這樣的代碼是捕獲不 到 Error 的。你可以用 catch (Error $e) { ... } 這樣的代碼,或者通過注冊異常處理函數( set_exception_handler())來捕獲 Error。
Error 異常層次結構
實例
<?php class MathOperations { protected $n = 10; // 求余數運算,除數為 0,拋出異常 public function doOperation(): string { try { $value = $this->n % 0; return $value; } catch (DivisionByZeroError $e) { return $e->getMessage(); } } } $mathOperationsObj = new MathOperations(); print($mathOperationsObj->doOperation()); ?>
以上程序執行輸出結果為:
Modulo by zero
以上是php7拋出異常的方法的所有內容,感謝各位的閱讀!希望分享的內容對大家有幫助,更多相關知識,歡迎關注億速云行業資訊頻道!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。