自己调用自己 称之为“递归”,而不是回调
你也知道回调的关键是这个回
既然是回,那么就有一个谁是主体的问题,因为回调是往回调用的意思
我调用了函数A,而函数A在执行过程中调用了我提供的函数B,这个函数B就称为函数A的回调函数
显然主体是函数A
我们知道,函数是完成某个特定功能的代码集合,在函数执行的过程中,一般是不能去干预他的行为的
当函数被设计成带有回调功能时,我们就有可能在函数的执行过程中,通过回调函数去干预他。例如
function foo($n, $f='') { if($n < 1) return; for($i=0; $i<$n; $i++) { echo $f ? $f($i) : $i; } } //无回调时 foo(5); //01234 //有回调时 function f1($v) { return $v + $v; }
function fnCallBack( $msg1 , $msg2 ){ echo 'msg1:'.$msg1; echo " "; echo 'msg2:'.$msg2;}$fnName = "fnCallBack"; $params = array( 'hello' , 'world' ); call_user_func_array( $fnName , $params );
微信扫码查看本文
发表评论