【发布时间】:2015-12-01 23:41:53
【问题描述】:
我正在熟悉 php 中的匿名函数和闭包,我需要使用闭包或匿名函数来传递给 array_walk,但这里有一个附加参数是一个简单的代码块:
$array = array(1, 2, 3, 4, 5, array(1, 2));
$callback = function(&$value, $key)
{
$value = $key*$value;
};
var_dump($array, array_walk_recursive($array, $callback), $array);
这很简单,但是说我想改变如下功能:
$callback = function(&$value, $key, $multiplier)
{
$value = $key*$value*$multiplier;
};
如何将乘数传递给匿名函数?或者如果它应该是一个闭包怎么做。
因为如下给我一个错误:
array_walk_recursive($array, $callback(5))
我知道 array_walk 有一个额外的参数 $user_data 可以传递,但我需要一个闭包或匿名函数。
【问题讨论】:
标签: php closures anonymous-function array-walk