<?php
$a = [
['name' => 'third1', 'order' => 3],
['name' => 'first1', 'order' => 1],
['name' => 'third2', 'order' => 3],
['name' => 'second1', 'order' => 2],
['name' => 'fourth', 'order' => 4],
['name' => 'second2', 'order' => 2],
];
usort ($a, function ($a, $b) {
if ($a['order'] == $b['order']) {
return 0;
}
return ($a['order'] < $b['order']) ? -1 : 1;
});
print_r ($a);
- Output for 7.0.0 - 7.0.20, 7.1.0 - 7.1.25, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
- Array
(
[0] => Array
(
[name] => first1
[order] => 1
)
[1] => Array
(
[name] => second1
[order] => 2
)
[2] => Array
(
[name] => second2
[order] => 2
)
[3] => Array
(
[name] => third1
[order] => 3
)
[4] => Array
(
[name] => third2
[order] => 3
)
[5] => Array
(
[name] => fourth
[order] => 4
)
)
- Output for 5.5.24 - 5.5.35, 5.6.8 - 5.6.28
- Array
(
[0] => Array
(
[name] => first1
[order] => 1
)
[1] => Array
(
[name] => second2
[order] => 2
)
[2] => Array
(
[name] => second1
[order] => 2
)
[3] => Array
(
[name] => third2
[order] => 3
)
[4] => Array
(
[name] => third1
[order] => 3
)
[5] => Array
(
[name] => fourth
[order] => 4
)
)
preferences:
152.85 ms | 403 KiB | 198 Q