在 PHP 中的 array_walk() 中增加一个整数
increment an integer in a array_walk() in PHP
我需要为数组的索引 orders2
使用增量值,我尝试了以下操作:
$i = 0;
array_walk($arr1, function(&$a) {
$i++;
$a['orders2'] = $i;
});
其中 $i
在行 $i++;
中是未知的。
我知道我可以使用 foreach()
但我想知道 array_walk()
是否具有常规循环的行为。如有任何意见,我们将不胜感激!
$i
不在您的匿名函数的范围内。您必须告诉函数导入它:
$i = 0;
array_walk($arr1, function(&$a) use (&$i) {
$i++;
$a['orders2'] = $i;
});
您需要将其作为引用导入,否则它将创建 $i
的副本,而不是修改外部变量。
我需要为数组的索引 orders2
使用增量值,我尝试了以下操作:
$i = 0;
array_walk($arr1, function(&$a) {
$i++;
$a['orders2'] = $i;
});
其中 $i
在行 $i++;
中是未知的。
我知道我可以使用 foreach()
但我想知道 array_walk()
是否具有常规循环的行为。如有任何意见,我们将不胜感激!
$i
不在您的匿名函数的范围内。您必须告诉函数导入它:
$i = 0;
array_walk($arr1, function(&$a) use (&$i) {
$i++;
$a['orders2'] = $i;
});
您需要将其作为引用导入,否则它将创建 $i
的副本,而不是修改外部变量。