
根据键值合并 php 多维数组
在 php 中,我们经常需要对多维数组进行合并,比如将具有相同键值的元素合并为一个键。下面是一个具体的例子:
问题:
给定以下 json 数组:
立即学习“PHP免费学习笔记(深入)”;
[
{
"workid": "jp20221113",
"in_stock": 10100
},
{
"workid": "jp20221114",
"in_stock": 5124124
},
{
"workid": "jp20221113",
"out_stock": 10100
}
]如何根据 workid 键合并此数组,得到以下结果?
[
{
"workid": "jp20221113",
"in_stock": 10100,
"out_stock": 10100
},
{
"workid": "jp20221114",
"in_stock": 5124124
}
]回答:
我们可以使用 array_reduce 函数循环数组,并将 workid 作为键合并数组元素。
$data = json_decode(<<输出:
array(2) { [0]=> array(3) { ["workID"]=> string(10) "JP20221113" ["in_stock"]=> int(10100) ["out_stock"]=> int(10100) } [1]=> array(2) { ["workID"]=> string(10) "JP20221114" ["in_stock"]=> int(5124124) } }如你所见,数组已成功按 workid 键合并。











