匿名函数(Anonymous functions),也叫闭包函数(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。
闭包函数的简单例子:
$func=function ($value){
echo $value;
};
call_user_func($func,'223');
这个方法返回一个闭包函数:
public function createAnonymousFunc($value)
{
return function () use ($value)
{
echo $value;
};
}
注:闭包函数不会从父作用域继承变量,需要使用use关键词继承变量
可以使用Closure类对闭包函数进行操作
Closure::bind函数复制闭包函数
$func=function ($value){
echo $value;
};
$func2=null;
$func2= \Closure::bind($func,null);
call_user_func($func2,'223');