PHP 版本 5.3.2-1ubuntu4.15
一、起始值:
$value_array = array('0.000','2.530',8);
$op_value = 2;
试试这个:
foreach($value_array as &$source_value) {
$source_value = $source_value + $op_value;
}
并得到 $value_array == (2,4.53,10);
但是如果你运行这个:
array_walk($value_array,function(&$source_value) {
$source_value = $source_value + $op_value;
});
你得到 $value_array == (0,2.53,8);
第一个给出了预期的结果,第二个没有。但它确实做了一些事情。多余的 0 最终被砍掉。
为什么是这样?我想使用 array_walk,但现在必须使用 foreach。