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
// )
📘 Naucz się w lekcji →