手机
当前位置:查字典教程网 >编程开发 >php教程 >set_exception_handler函数在ThinkPHP中的用法
set_exception_handler函数在ThinkPHP中的用法
摘要:本文实例讲述了set_exception_handler函数在ThinkPHP中的用法。分享给大家供大家参考。具体方法如下:函数:复制代码代...

本文实例讲述了set_exception_handler函数在ThinkPHP中的用法。分享给大家供大家参考。具体方法如下:

函数:

复制代码 代码如下:string set_exception_handler ( callback $exception_handler )

定义和用法:

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

该函数用于创建运行时期间的用户自己的异常处理方法。

该函数会返回旧的异常处理程序,若失败,则返回 null。

语法:

set_exception_handler(exception_function)

参数 描述
error_function

必需。规定未捕获的异常发生时调用的函数。

该函数必须在调用 set_exception_handler() 函数之前定义。

这个异常处理函数需要需要一个参数,即抛出的 exception 对象。

提示和注释:

提示:在这个异常处理程序被调用后,脚本会停止执行。

同样是在看TP代码的时候发现的这个函数,就想不明白了,自己以前咋就没关心过这些东西呢?(捶胸顿足ing。。。)

继续来看一下TP是怎么实现的,呃,为啥一定要用TP呢,嗯。那好吧,一会儿我把手册的例子也搬过来。

复制代码 代码如下:public function appException($e)

{

halt($e->__toString());

}

set_exception_handler(array(&$this,"appException"));

呵呵,这个简单吧?因为我没有给出halt这个方法的实现,这样就足够了。

再看手册中的例子,

复制代码 代码如下:function exception_handler($exception) {

echo "Uncaught exception: " , $exception->getMessage(), "n";

}

set_exception_handler('exception_handler');

throw new Exception('Uncaught Exception');

echo "Not Executedn";

其实呢,set_exception_handler就是设置了一下,当你的程序需要抛出一个异常的时候调用哪个自定义的函数。

就这么简单

注意事项:

set_exception_handler(“myException”) 不仅可以接受函数,还可以接受 类的方法(公开的静态方法 及 公开的非静态方法 都可以),但需要以 数组形式 传递,数组的第一值为“类名”,第二个参数为“方法名”

希望本文所述对大家的ThinkPHP框架程序设计有所帮助。

【set_exception_handler函数在ThinkPHP中的用法】相关文章:

php中get_defined_constants函数用法实例分析

php中set_error_handler的用法总结

php输出全球各个时区列表的方法

PHP中的事务使用实例

php编写的抽奖程序中奖概率算法

在PHP中使用灵巧的体系结构

php正则preg_replace_callback函数用法实例

php转换颜色为其反色的方法

session 的生命周期是多长

图象函数中的中文显示

精品推荐
分类导航