我正在尝试将array_module_rate
数组中的每个值相乘。
结果应为:
$array_module_rate[0]
= 25 $array_module_rate[1]
= 15 $array_module_rate[2]
= 20 我该怎么做?
$array_module_rate = array(
'5',
'3',
'4'
}
$global_course = 5;
array_map(function($cal) {
return $cal * $global_course;
}, $array_module_rate);
答案 0 :(得分:0)
$array_module_rate = array(
'5',
'3',
'4'
}
$global_course = 5;
foreach($array_module_rate as $key=>$value){
$array_module_rate[$key]=$global_course* $value;
}
您可以使用foreach循环
答案 1 :(得分:0)
使用闭包在array_map
回调中发送其他参数。
$array_module_rate = array(
'5',
'3',
'4'
);
$global_course = 5;
array_map(function($cal) use($global_course) {
return $cal * $global_course;
}, $array_module_rate);
答案 2 :(得分:0)
如果要修改原始数组,可以使用array_walk
代替array_map
。它按引用获取数组,因此,如果您也按引用将array元素传递给回调,则可以直接对其进行修改。
array_walk($array_module_rate, function(&$cal) use ($global_course) {
$cal *= $global_course;
});
请注意,您需要使用$global_course
将use
传递给回调,否则需要it won't be available in that scope。