<?php
$newArr = array (
100 =>
array (
1 =>
array (
'AVA_Date' => '2019-04-18',
'ROO_Id' => 100,
'RAT_Id' => 9
),
2 =>
array (
'AVA_Date' => '2019-04-20',
'ROO_Id' => 100,
'RAT_Id' => 10
),
4 =>
array (
'AVA_Date' => '2019-04-21',
'ROO_Id' => 100,
'RAT_Id' => 10
),
7 =>
array (
'AVA_Date' => '2019-04-22',
'ROO_Id' => 100,
'RAT_Id' => 9
)
)
);
$result = [];
foreach ($newArr as $rooId => $rows) {
$groups = [];
foreach ($rows as $row) {
if (!isset($groups[$row['RAT_Id']])) {
$row['AVA_Date'] = (array) $row['AVA_Date'];
$groups[$row['RAT_Id']] = $row;
} else {
$groups[$row['RAT_Id']]['AVA_Date'][] = $row['AVA_Date'];
}
}
$result[$rooId] = array_values($groups);
}
var_export($result);
preferences:
24.33 ms | 404 KiB | 5 Q