<?php
$array = [
[
"id" => 2,
"level" => 0,
"email" => "bexcailimited1@gmail.com",
],
[
[
"id" => 4,
"level" => 1,
"email" => "bexcailimited3@gmail.com",
],
[
[
"id" => 5,
"level" => 2,
"email" => "bexcailimited4@gmail.com",
],
[
[
"id" => 6,
"level" => 3,
"email" => "bexcailimited5@gmail.com",
],
],
],
],
[
"id" => 3,
"level" => 0,
"email" => "bexcailimited2@gmail.com",
],
[
"id" => 7,
"level" => 0,
"email" => "bexcaitest@gmail.com",
],
[
[
"id" => 8,
"level" => 1,
"email" => "Test012@gmail.com",
],
[
[
"id" => 9,
"level" => 2,
"email" => "test03@gmail.com",
],
[
[
"id" => 10,
"level" => 3,
"email" => "test04@gmail.com",
],
[
[
"id" => 11,
"level" => 4,
"email" => "test05@gmail.com",
],
[
[
"id" => 12,
"level" => 5,
"email" => "test06@gmail.com",
],
],
],
],
],
],
];
function flattenList(array $array): array
{
$result = [];
foreach ($array as $row) {
array_push($result, ...array_is_list($row) ? flattenList($row) : [$row]);
}
return $result;
}
$flatten2d = flattenlist($array);
usort($flatten2d, fn($a, $b) => $a['id'] <=> $b['id']);
var_export($flatten2d);
preferences:
24.28 ms | 407 KiB | 5 Q