uasort
funkcja
Sortuje tablicę według wartości przy użyciu własnej funkcji porównującej. Zachowuje oryginalne klucze.
uasort(array &$array, callable $callback): true
uasort działa jak usort, ale w przeciwieństwie do niego zachowuje powiązania klucz–wartość. Funkcja porównująca ($callback) przyjmuje dwie wartości i powinna zwracać liczbę ujemną, 0 lub liczbę dodatnią. Tablica jest modyfikowana przez referencję, a funkcja zwraca true. Przydaje się do sortowania tablic asocjacyjnych (np. listy użytkowników z ocenami) bez gubienia kluczy.
<?php
declare(strict_types=1);
$oceny = ['Marek' => 3, 'Anna' => 5, 'Bartek' => 2];
uasort($oceny, fn($a, $b) => $a <=> $b);
print_r($oceny);
// wynik:
// Array
// (
// [Bartek] => 2
// [Marek] => 3
// [Anna] => 5
// )