PHP set_exception_handler() 函數
實例
設置用戶定義的異常處理函數:
<?php // 用戶定義的異常處理函數 function myException($exception) { echo "<b>Exception:</b> ", $exception->getMessage(); } // 設置用戶定義的異常處理函數 set_exception_handler("myException"); // 拋出異常 throw new Exception("Uncaught exception occurred!"); ?>
以上代碼的輸出類似這樣:
Exception: Uncaught exception occurred!
定義和用法
set_exception_handler() 函數設置用戶定義的異常處理函數。
腳本會在此異常處理程序被調用后停止執行。
語法
set_exception_handler(exceptionhandler);
參數 | 描述 |
---|---|
exceptionhandler |
必需。規定當一個未捕獲的異常發生時所調用函數的名稱。 注釋:也可以傳遞一個 NULL 值用于重置異常處理函數為默認值。 |
技術細節
返回值: |
返回包含之前定義的異常處理程序的名稱的字符串,或者在錯誤時返回 NULL。 如果之前沒有定義一個錯誤處理程序,也會返回 NULL。 如果參數使用了 NULL,重置處理程序為默認狀態,并且會返回一個 TRUE。 |
---|---|
PHP 版本: | 5.0+ |
PHP 更新日志: |
PHP 7.0.0:傳遞到 exception_handler 中的參數類型從 Exception 更改為 Throwable。 PHP 5.5:之前,如果傳遞 NULL,該函數返回 TRUE。從 PHP 5.5 起返回之前的處理程序。 |