我一直在使用PHP学习web开发,我对匿名函数有点困惑.特别是关于参数的传递以及它们如何在这样的函数内工作.
例如,在代码中
例如,在代码中
$array = array("really long string here,boy","this","middling length","larger"); usort($array,function($a,$b) { return strlen($a) - strlen($b); }); print_r($array);
我真的不知道如何使用参数$a和$b.我认为它们是为了比较而对数组进行排序,以确定函数应该如何使用它们并将它们从中取出?
在下一个代码中
$mult = function($x) { return $x * 5; }; echo $mult(2);
我知道参数直接传递给函数并用于返回乘法的结果.
在这个post的例子中
$arr = range(0,10); $arr_even = array_filter($arr,function($val) { return $val % 2 == 0; }); $arr_square = array_map(function($val) { return $val * $val; },$arr);
变量$val取自哪里?
我知道也许这并不像看起来那么复杂,但我真的很困惑在这种功能上使用参数