<?php
$array = [
[
'name' => 'Umber',
'reason' => 'No data',
'id' => '12'
],
[
'name' => 'Jakar',
'reason' => 'Wrong format',
'id' => '12'
],
[
'name' => 'Lane',
'reason' => 'No data',
'id' => '12'
],
[
'name' => 'Jake',
'reason' => 'Not found',
'id' => '13'
],
[
'name' => 'Jame',
'reason' => 'Wrong name',
'id' => '13'
],
[
'name' => 'Joe',
'reason' => 'No data',
'id' => '13'
]
];
$result = [];
foreach ($array as $row) {
$result[$row['id']][] = $row['reason'];
}
var_export($result);
echo "\n---\n";
var_export(
array_reduce(
$array,
function($result, $row) {
$result[$row['id']][] = $row['reason'];
return $result;
},
[]
)
);
preferences:
24.87 ms | 405 KiB | 5 Q