## 匿名函数
[匿名函数](http://php.net/manual/zh/functions.anonymous.php)(Anonymous functions),也叫[闭包函数](http://php.net/manual/zh/class.closure.php)(closures),允许 临时创建一个没有指定名称的函数。最经常用作回调函数(callback)参数的值。当然,也有其它应用的情况。
匿名函数目前是通过 Closure 类来实现的。
~~~
// 定义一个闭包,并把它赋给变量 $f
$f = function () {
return 7;
}
// 使用闭包也很简单
$f(); //这样就调用了闭包,输出 7
// 当然更多的时候是把闭包作为参数(回调函数)传递给函数
function testClosure (Closure $callback) {
return $callback();
}
// $f 作为参数传递给函数 testClosure,如果是普遍函数是没有办法作为testClosure的参数的
testClosure($f);
// 也可以直接将定义的闭包作为参数传递,而不用提前赋给变量
testClosure (function () {
return 7;
});
// 闭包不止可以做函数的参数,也可以作为函数的返回值
function getClosure () {
return function () { return 7; };
}
$c = getClosure(); // 函数返回的闭包就复制给 $c 了
$c(); // 调用闭包,返回 7
~~~
闭包类:https://laravel-china.org/articles/4625/php-closure-closure