我从api调用返回了此数组。
$areas = [
[
'name' => 'XDFF',
'total' => 12
],
[
'name' => 'XDEF',
'total' => 20
],
[
'name' => 'XDFF',
'total' => 23
]
];
我的任务是合并名称相似的名称(在本例中为“ XDFF”),并将其总计相加。
我可以使用此循环来完成此操作,但是我正在寻找一种更优化的方法而不循环遍历,这有可能吗?
$newAreas = [];
foreach ($areas as $area) {
if (array_key_exists($area['name'], $newAreas)) {
$newAreas[$area['name']]['total'] += $area['total'];
continue;
}
$newAreas[$area['name']] = $area;
}
print_r($newAreas);