Maison >développement back-end >tutoriel php >回调函数 - php 手册里关于callback 类型中有一句话我不是很理解

回调函数 - php 手册里关于callback 类型中有一句话我不是很理解

WBOY
WBOYoriginal
2016-06-06 20:12:56998parcourir

回调函数 - php 手册里关于callback 类型中有一句话我不是很理解
未捕获的异常,官网没有给 demo,我也没想到有什么异常, 看到的大神能不能帮忙写个简单的例子 谢谢了

回复内容:

回调函数 - php 手册里关于callback 类型中有一句话我不是很理解
未捕获的异常,官网没有给 demo,我也没想到有什么异常, 看到的大神能不能帮忙写个简单的例子 谢谢了

很好理解啊。

比如一个函数中你注册了两个回调,示例代码:

<code class="php">function somefunc1(){
    //some code...
    //Throw a exception
    throw new \Exception('I am a exception!');
}

function somefunc2(){
    //some code...
    //Not throw a exception
}
</code>

恰好,在你执行的时候, somefunc1() 的异常被抛出来了,这时候,在你的要使用的回调函数的函数中,你必须:

<code class="php">try {
    call_user_func('somefunc1');
} catch (\Exception $e) {
    echo $e->getMessage();
}
//以下函数在异常时候会继续执行
call_user_func('somefunc2');</code>

如果你没有像上述那样子去捕获异常,代码示例如下:

<code class="php">call_user_func('somefunc1');
//当异常抛出的时候,一下代码不会继续执行
call_user_func('somefunc2');</code>

以上。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn