PHP Version 5.3.2-1ubuntu4.15
1., Startwerte:
$value_array = array('0.000','2.530',8);
$op_value = 2;
Versuchen Sie dies:
foreach($value_array as &$source_value) {
$source_value = $source_value + $op_value;
}
Und erhalte $value_array == (2,4.53,10);
Aber wenn Sie das ausführen:
array_walk($value_array,function(&$source_value) {
$source_value = $source_value + $op_value;
});
Sie erhalten $value_array == (0,2.53,8);
Die erste Methode führt zu dem erwarteten Ergebnis, die zweite nicht. Aber es macht irgendetwas. Die überschüssigen 0's wurden schließlich abgeschnitten.
Warum ist das so? Ich wollte array_walk verwenden, aber jetzt müssen foreach verwenden.