PHP set_exception_handler() 函数

实例

设置用户定义的异常处理函数:

  1. <?php
  2. // 用户定义的异常处理函数
  3. function myException($exception) {
  4. echo "<b>Exception:</b> ", $exception->getMessage();
  5. }
  6. // 设置用户定义的异常处理函数
  7. set_exception_handler("myException");
  8. // 抛出异常
  9. throw new Exception("Uncaught exception occurred!");
  10. ?>

以上代码的输出类似这样:

  1. Exception: Uncaught exception occurred!

定义和用法

set_exception_handler() 函数设置用户定义的异常处理函数。

脚本会在此异常处理程序被调用后停止执行。


语法

  1. 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 起返回之前的处理程序。

分类导航