<?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);
- Output for 7.4.0 - 7.4.33, 8.0.1 - 8.0.30, 8.1.0 - 8.1.29, 8.2.0 - 8.2.20, 8.3.0 - 8.3.8
- array (
100 =>
array (
0 =>
array (
'AVA_Date' =>
array (
0 => '2019-04-18',
1 => '2019-04-22',
),
'ROO_Id' => 100,
'RAT_Id' => 9,
),
1 =>
array (
'AVA_Date' =>
array (
0 => '2019-04-20',
1 => '2019-04-21',
),
'ROO_Id' => 100,
'RAT_Id' => 10,
),
),
)
preferences:
138.7 ms | 407 KiB | 127 Q