<?php
$array = [
[
121 => [ "number" => 121, "name" => "Some Name 1", "value" => "2.222" ],
116 => [ "number" => 116, "name" => "Some Name 2", "value" => "1.111" ],
1 => [ "number" => 1, "name" => "Some Name 3", "value" => "1.232" ]
],
[
121 => [ "number" => 121, "name" => "Some Name 1", "value" => "1.111" ],
116 => [ "number" => 116, "name" => "Some Name 2", "value" => "2.222" ],
1 => [ "number" => 1, "name" => "Some Name 3", "value" => "3.111" ]
]
];
$result = [];
foreach ($array as $group) {
foreach ($group as $key => $row) {
if (!isset($result[$key])) {
$result[$key] = $row;
} else {
$result[$key]['value'] += $row['value'];
}
}
}
var_export($result);
preferences:
27.21 ms | 402 KiB | 5 Q