- var_dump: documentation ( source)
- array_values: documentation ( source)
- array_filter: documentation ( source)
- in_array: documentation ( source)
<?php
$data = [
[
'record_id' => 3,
'task_date' => '2018-10-02'
],
[
'record_id' => 5,
'task_date' => '2018-10-02'
],
[
'record_id' => 1,
'task_date' => '2018-09-27'
]
];
$out = [];
$datesIterated = [];
foreach ($data as $date) {
if(in_array($date['task_date'], $datesIterated)) {
continue;
}
$out[] = array_values(array_filter($data, function($item) use ($date) {
if ($item['task_date'] == $date['task_date']) {
return $item;
}
}));
$datesIterated[] = $date['task_date'];
}
var_dump($out);