<?php
$list = [
['a' => 1, 'priority' => false],
['a' => 2, 'priority' => true],
['a' => 3, 'priority' => false],
['a' => 4, 'priority' => true],
];
usort ($list, static fn (array $a, array $b): int => (int)$b['priority'] <=> (int)$a['priority']);
var_dump($list);
- Output for 8.0.1 - 8.0.30, 8.1.0 - 8.1.33, 8.2.0 - 8.2.29, 8.3.0 - 8.3.26, 8.4.1 - 8.4.13
- array(4) {
[0]=>
array(2) {
["a"]=>
int(2)
["priority"]=>
bool(true)
}
[1]=>
array(2) {
["a"]=>
int(4)
["priority"]=>
bool(true)
}
[2]=>
array(2) {
["a"]=>
int(1)
["priority"]=>
bool(false)
}
[3]=>
array(2) {
["a"]=>
int(3)
["priority"]=>
bool(false)
}
}
- Output for 7.3.29
- Parse error: syntax error, unexpected 'fn' (T_STRING), expecting :: (T_PAAMAYIM_NEKUDOTAYIM) in /in/Cuvkl on line 11
Process exited with code 255.
preferences:
76.66 ms | 407 KiB | 5 Q