PHP前端开发

PHP如何使用array_reduce函数合并多维数组的键值?

百变鹏仔 1个月前 (12-15) #PHP
文章标签 多维

php 如何按照键值合并多维数组?

为了将多维数组按键值合并,一种常用方法是使用 array_reduce() 函数。此函数将数组中的每个元素作为参数传递给指定回调函数,并聚合计算结果。

代码示例:

$data = json_decode([    {        "workid": "jp20221113",        "in_stock": 10100    },    {        "workid": "jp20221114",        "in_stock": 5124    },    {        "workid": "jp20221113",        "out_stock": 10100    }]);$result = array_reduce($data, function ($result, $current) {    $target = array_merge($result[$current['workid']] ?? [], $current);    $result[$current['workid']] = $target;    return $result;}, []);$result = array_values($result);

解释:

立即学习“PHP免费学习笔记(深入)”;

结果:

[    {        "workID": "JP20221113",        "in_stock": 10100,        "out_stock": 10100    },    {        "workID": "JP20221114",        "in_stock": 5124    }]