PHP异常处理函数set_exception_handler()的用法
定义和用法
set_exception_handler() 函数设置用户自定义的异常处理函数。
该函数用于创建运行时期间的用户自己的异常处理方法。
该函数会返回旧的异常处理程序,若失败,则返回 null。
语法
set_exception_handler(exception_function)
参数 | 描述 |
---|---|
error_function | 必需。规定未捕获的异常发生时调用的函数。 该函数必须在调用 set_exception_handler() 函数之前定义。 这个异常处理函数需要需要一个参数,即抛出的 exception 对象。 |
提示和注释
提示:在这个异常处理程序被调用后,脚本会停止执行。
例子
1 2 3 4 5 6 7 8 9 | <?php function myException( $exception ) { echo "<b>Exception:</b> " , $exception ->getMessage(); } set_exception_handler( 'myException' ); throw new Exception( 'Uncaught Exception occurred' ); ?> |
输出:
1 | Exception: Uncaught Exception occurred |
需要注意的是:
set_exception_handler(“myException”) 不仅可以接受函数,还可以接受 类的方法(公开的静态方法 及 公开的非静态方法 都可以),但需要以 数组形式 传递,数组的第一值为“类名”,第二个参数为“方法名”,如下代码所示:
1 2 3 4 5 6 7 8 9 10 11 | <?php class App{ function myException( $exception ) { echo "<b>Exception:</b> " , $exception ->getMessage(); } } set_exception_handler( array ( 'App' , 'myException' )); throw new Exception( 'Uncaught Exception occurred' ); ?> |
延伸阅读:
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步