Der Raumschiff-Operator ermöglicht den einfachen Vergleich von
zusammengesetzten Werten über mehrere Achsen hinweg. Das folgende
Beispiel sortiert $people
nach dem Nachnamen und
anschließend, wenn der Nachname übereinstimmt, nach dem Vornamen.
<?php
$people[0] = ['first' => 'Adam', 'last' => 'West'];
$people[1] = ['first' => 'Alec', 'last' => 'Baldwin'];
$people[2] = ['first' => 'Adam', 'last' => 'Baldwin'];
function sorter(array $a, array $b) {
return [$a['last'], $a['first']] <=> [$b['last'], $b['first']];
}
usort($people, 'sorter');
foreach ($people as $person) {
print $person['last'] . ', ' . $person['first'] . PHP_EOL;
}
?>
Das oben gezeigte Beispiel erzeugt folgende Ausgabe:
Baldwin, Adam
Baldwin, Alec
West, Adam