我想更新一个多维 php 数组的值:$a
array(1) {
["test"]=> array(4) {
[0]=> int(5)
[1]=> int(7)
[2]=> int(10)
[3]=> int(14)
}
}
对于 $a["test"][$i],我想获得这个新值 $a["test"][$i] - $a["test"][$i-1]。
在这种情况下,结果数组将是:
array(1) {
["test"]=> array(4) {
[0]=> int(5)
[1]=> int(2)
[2]=> int(3)
[3]=> int(4)
}
}
当然,我可以用一个 foreach 循环和一个新数组来做到这一点
$new = array();
foreach($a as $k=>$v){
for($i=0;$i<=3;$i++){
$new[$k][$i] = $v[$i] - $v[$i-1];
}
}
$a = $new;
var_dump($a);
但这是最好的方法吗?只是出于好奇,我想知道是否使用 array_walk 让它更好,一般来说,array_walk 如何/如果可以访问数组中的上一个/下一个值。
十分感谢 !