Podręcznik PHP Poprzedni Następny array_multisort Opis array_multisort() może być użyta do sortowania kilku tablic na raz lub wielowymiarowej tablicy na podstawie jednego z większej liczby wymiarów. Zachowywane są przypisania kluczy. Tablice wejściowe są traktowane jak kolumy tabeli, które mają być posortowane wierszami - odpowiada to funkcjonalności warunku SQL ORDER BY. Pierwsza tablica jest tablicą priorytetową do sortowania. Wiersze (wartości) w tej tablicą które są takie sane sortowane są według następnej tablicy wejściowej i tak dalej. Struktura argumentów tej funkcji nie jest zwyczajna, ale jest ona elastyczna. Pierwszy argument musi być tablicą. Każdy następny argument musi być tablicą lub flagą oznaczającą porządek sortowania - jeden z poniższych. Flagi porządku sortowania: SORT_ASC - sortuj w porządku rosnącym SORT_DESC - sortuj w porządku malejącym Flagi typu sortowania: SORT_REGULAR - porównuj elementy normalnie SORT_NUMERIC - porównuj elementy numerycznie SORT_STRING - porówuj elementy jak stringi Nie można podać żadnych dwóch flag tego samego typu dla jednej tablicy. Flagi sortowania podane pod argumencie-tablicy dotyczą tylko tej tablicy - są one zerowane do domyślnych wartośći SORT_ASC i SORT_REGULAR po każdym argumencie tablicowym. Zwraca TRUE w przypadku sukcesu, FALSE w przypadku porażki. Przykład 1. Sortowanie wielu tablic $tbl1 = array ("10", 100, 100, "a"); $tbl2 = array (1, 3, "2", 1); array_multisort ($tbl1, $tbl2); W tym przypadku, po sortowaniu, pierwsza tablica będzie zawierać 10, "a", 100, 100, a druga 1, 1, "2", 3. Elementy drugiej tablicy odpowiadające identycznym elementom pierwszej tablicy (100 i 100) także zostały posortowane. Przykład 2. Sortowanie wielowymiarowych tablic $tbl = array (array ("10", 100, 100, "a"), array (1, 3, "2", 1)); array_multisort ($tbl[0], SORT_ASC, SORT_STRING, $tbl[1], SORT_NUMERIC, SORT_DESC); W tym przykładzie, po sortowaniu, pierwsza tablica zawiera 10, 100, 100, "a" (została posortowana według wartości tekstowych w porządku rosnącym), a druga 1, 3, "2", 1 (sortowana jak liczby w porządku malejącym). Poprzedni Spis treści Następny Początek rozdziału