array_multisort

funkcja

Sortuje jedną lub wiele tablic naraz, zachowując powiązania między kolumnami — jak ORDER BY w SQL.

array_multisort(array &$array1, mixed ...$rest): bool

array_multisort sortuje kilka tablic jednocześnie, utrzymując powiązania między ich elementami o tych samych indeksach — to odpowiednik ORDER BY col1, col2 z SQL. Pierwsza tablica jest sortowana, a kolejne tablice są przestawiane razem z nią. Możesz dodać flagi SORT_ASC / SORT_DESC i SORT_STRING / SORT_NUMERIC między tablicami, by kontrolować kierunek i typ porównania. Funkcja zwraca true w przypadku sukcesu.

<?php
declare(strict_types=1);

$imiona = ['Zofia', 'Anna', 'Marek', 'Anna'];
$wiek   = [25, 30, 25, 20];

array_multisort($wiek, SORT_ASC, $imiona, SORT_ASC);
print_r($imiona);
// wynik:
// Array
// (
//     [0] => Anna
//     [1] => Marek
//     [2] => Zofia
//     [3] => Anna
// )
print_r($wiek);
// wynik:
// Array
// (
//     [0] => 20
//     [1] => 25
//     [2] => 25
//     [3] => 30
// )
📘 Naucz się w lekcji →