<?php
$array = [
8 => [
2 => [
'num_rooms' => 2,
'adults' => [1, 1],
'children' => [0, 0],
'prices' => [50, 50],
'price' => 130,
'supp' => 30,
],
3 => [
'num_rooms' => 1,
'adults' => [1],
'prices' => [100],
'price' => 150,
'supp' => 50,
],
],
1 => [
2 => [
'num_rooms' => 2,
'adults' => [1, 1],
'children' => [1, 0],
'prices' => [75, 75],
'price' => 170,
'supp' => 20,
],
],
];
$result = [];
foreach (array_merge(...$array) as $row) {
foreach ($row as $k => $v) {
$result[$k] = ($result[$k] ?? 0) + array_sum((array) $v);
}
}
var_export($result);
- Output for 8.1.0 - 8.1.28, 8.2.0 - 8.2.19, 8.3.0 - 8.3.7
- array (
'num_rooms' => 5,
'adults' => 5,
'children' => 1,
'prices' => 350,
'price' => 450,
'supp' => 100,
)
preferences:
52.02 ms | 402 KiB | 62 Q