set_exception_handler函数在ThinkPHP中的用法
程序员文章站
2024-02-03 15:02:04
本文实例讲述了set_exception_handler函数在thinkphp中的用法。分享给大家供大家参考。具体方法如下:
函数:
复制代码 代码如下:string...
本文实例讲述了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($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";
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中的用法
-
C指针(2)——指针在函数中的应用(程序讲解)
-
详解WordPress开发中get_header()获取头部函数的用法_PHP
-
在PHP的图形函数中显示汉字_PHP教程
-
Python中apply函数的用法实例教程
-
numpy中函数shape的用法
-
php 引用只允许定义在函数参数中,实时传递引用是禁止的
-
php中curl_multi函数集的用法
-
在PHP中,http_post_data和http_put_data的用法(实例)?解决思路
-
详解WordPress开发中wp_title()函数的用法,wordpresswp_title_PHP教程