PHP中的匿名函数与闭包详解
一、匿名函数(Anonymous Function)
匿名函数是一种没有显式名称的函数,通常用于一次性操作或作为回调函数传递给其他函数。其核心特点包括:
-
无名称:通过
function关键字定义,直接赋值给变量或作为参数传递。 -
灵活性:可作为变量存储,动态生成函数逻辑。
-
语法结构:
$func = function ($arg1, $arg2) {
return $arg1 + $arg2;
};
echo $func(3, 5); // 输出8
-
匿名函数以分号结尾,表示它是一个表达式而非语句。
典型应用场景:
-
回调函数:例如在
array_map或usort中动态定义排序逻辑:
$numbers = [3, 1, 4];
usort($numbers, function ($a, $b) {
return $a <=> $b;
});
-
闭包的基础:匿名函数结合
use关键字后升级为闭包。
二、闭包(Closure)
闭包是匿名函数的扩展,能够捕获并保留其定义时所在作用域的变量。其核心特性包括:

最低0.47元/天 解锁文章
575

被折叠的 条评论
为什么被折叠?



