很好理解啊。 比如一个函数中你注册了两个回调,示例代码: function somefunc1(){ //some code... //Throw a exception throw new \Exception('I am a exception!'); } function somefunc2(){ //some code... //Not throw a exception } 恰好,在你执行的时候, somefunc1() 的异常被抛出来了,这时候,在你的要使用的回调函数的函数中,你必须: try { call_user_func('somefunc1'); } catch (\Exception $e) { echo $e->getMessage(); } //以下函数在异常时候会继续执行 call_user_func('somefunc2'); 如果你没有像上述那样子去捕获异常,代码示例如下: call_user_func('somefunc1'); //当异常抛出的时候,一下代码不会继续执行 call_user_func('somefunc2'); 以上。
很好理解啊。
比如一个函数中你注册了两个回调,示例代码:
恰好,在你执行的时候,
somefunc1()
的异常被抛出来了,这时候,在你的要使用的回调函数的函数中,你必须:如果你没有像上述那样子去捕获异常,代码示例如下:
以上。