我似乎一见钟情: 我有一个嵌套的assoc数组,即
"stock" => [
123 => [
3 => 17,
5 => 5,
7 => 0
],
456 => [
3 => 1,
5 => 3,
7 => 7
]
]
这些代表仓库(3、5和7)中的物料库存(123和456)。 现在,我想为一个项目更新一个仓库中的库存,即
"stock" => [
123 => [
3 => 11
]
]
我试图通过array_merge(重新为数组设置键)和array_merge_recursive(奇怪的是,它应该这样做-是数字键吗?)来解决这个问题,但是没有用。我也发现了这个有趣的地方https://vancelucas.com/blog/php-array_merge-preserving-numeric-keys/,但是它取代了阵列的整个分支(所以我失去了仓库5和7)。
有人对此有一些聪明的主意吗?
答案 0 :(得分:2)
答案 1 :(得分:1)
这是您的摘录,
foreach ($temp['stock'] as $key => &$value) {
foreach ($value as $key1 => $value1) {
// no need to check, it will add at respective key matching
$arr['stock'][$key][$key1] = $value1;
}
}
答案 2 :(得分:0)
如果我错了,请纠正我,但是似乎没有什么可以阻止您:
$foo['stock'][123][3] = 11;