function test(){
$x=2;
$a=1008611;
$a=function($x) use ($a){ //$x不能被使用 $a才可以 用了use从父作用域继承变量$a
echo $x;
echo "</br>";
echo $a;
};
return $a;
}
$a =test();
var_dump($a);
call_user_func($a,2); // 2 \n 1008611
$a(2);// 2 \n 1008611
错误代码
——————————————
闭包就 因此可以把闭包简单理解成“定义在一个函数内部的函数
闭包能够读取其他函数内部变量的函数 //use(闭包专用关键字)
函数内的闭包 不是直接执行 而函数往往作为变量会赋值给其他对象
(而回调是函数内调用另一个函数
回调函数就是一个通过函数指针调用的函数 如果你把函数的指针(地址)作为参数传递给另一个函数,当这个指针被用来调用其所指向的函数时,我们就说这是回调函数)