PHP闭包

php的闭包(Closure)也就是匿名函数。是PHP5.3引入的。

1
2
3
4
<?php
$a = function() use ($b) {
}

闭包的几个作用:

  1. 减少foreach的循环的代码
  2. 减少函数的参数
  3. 解除递归函数
  4. 关于延迟绑定

减少foreach的循环的代码

1
2
3
4
5
6
7
8
9
function myFunction($value, $key) {
echo "The key $key has the value $value" . PHP_EOL;
}
$arr = [
'a' => 'red',
'b' => 'blue',
'c' => 'yellow',
];
array_walk($arr, "myFunction");

减少函数的参数

解除递归函数

关于延迟绑定

本文参考

轩脉刃de刀光剑影