<?php
$exhibitions = [
[
'exhibition_title' => 'Picasso',
'venue_name' => 'Gallery 1',
'room_name' => 'Room 4',
'start_date' => '2023-11-15',
'end_date' => '2023-11-17',
'room_id' => 261,
'exhibition_id' => 3540,
'venue_order' => 2,
],
[
'exhibition_title' => 'Monet',
'venue_name' => 'Gallery 4',
'room_name' => 'Room 2',
'start_date' => '2023-10-30',
'end_date' => '2023-11-03',
'room_id' => 274,
'exhibition_id' => 8417,
'venue_order' => 1,
]
];
$result = [];
foreach ($exhibitions as $row) {
$dateObjects = new DatePeriod(
new DateTime($row['start_date']),
new DateInterval('P1D'),
new DateTime($row['end_date']),
DatePeriod::INCLUDE_END_DATE
);
foreach ($dateObjects as $d) {
$result[] = $row + ['date' => $d->format("Y-m-d")];
}
}
var_export($result);
preferences:
26.75 ms | 404 KiB | 5 Q