<?php
$data = [
[
'id' => 2,
'position' => 3,
],
[
'id' => 1,
'position' => 2,
],
[
'id' => 1,
'position' => 1,
],
[
'id' => 2,
'position' => 2,
],
[
'id' => 2,
'position' => 1,
],
[
'id' => 1,
'position' => 3,
],
];
usort(
$data,
function ($a, $b) {
if ($a['position'] == $b['position']) {
return ($a['id'] < $b['id']) ? -1 : 1;;
}
return ($a['position'] < $b['position']) ? -1 : 1;
}
);
usort(
$data,
function ($a, $b) {
if ($a['id'] == $b['id']) {
return 0;
}
return ($a['id'] < $b['id']) ? -1 : 1;
}
);
var_dump($data);
preferences:
50.15 ms | 402 KiB | 5 Q