Funkcja array_multisort() w PHP
Przykład
Zwróć tablicę posortowaną rosnąco:
<?php $a=array("Dog","Cat","Horse","Bear","Zebra"); array_multisort($a); print_r($a); ?>
Definicja i zastosowanie
Funkcja array_multisort() zwraca posortowaną tablicę. Możesz wprowadzić jedną lub kilka tablic. Funkcja najpierw sortuje pierwszą tablicę, a następnie inne tablice, jeśli kilka wartości jest takie same, sortuje następną tablicę.
Komentarz:Nazywane klucze stringi będą zachowane, ale klucze liczbowe będą przypisywane ponownie, zaczynając od 0 i zwiększając o 1.
Komentarz:Możesz ustawić parametry porządku i typu sortowania po każdym tablicy. Jeśli nie są ustawione, każdy parametr tablicy będzie używał wartości domyślnej.
Syntaktyka
array_multisort(array1,sorting order,sorting type,array2,array3...)
Parametry | Opis |
---|---|
array1 | Wymagane. Określ tablicę. |
sorting order |
Opcjonalnie. Określ porządek sortowania. Możliwe wartości:
|
sorting type |
Opcjonalnie. Określ typ sortowania. Możliwe wartości:
|
array2 | Opcjonalnie. Określ tablicę. |
array3 | Opcjonalnie. Określ tablicę. |
Opis
Funkcja array_multisort() sortuje wiele tablic lub wielowymiarowych tablic.
Tablice w parametrze są traktowane jako kolumny tabeli i sortowane wierszami - podobnie jak funkcja ORDER BY w SQL. Pierwsza tablica to główna tablica do sortowania. Jeśli wiersze (wartości) w tablicy są równe, sortuje się według wartości z następnego wprowadzonego wiersza, i tak dalej.
Pierwszy parametr jest tablicą, każdy następny parametr może być tablicą lub jednym z poniższych znaków flag sortowania (znaki flag sortowania służą do zmiany domyślnego porządku sortowania):
- SORT_ASC - Domyślnie, sortuj w porządku rosnącym. (A-Z)
- SORT_DESC - Sortuj w porządku malejącym. (Z-A)
Później można指定指定排序的类型:
- SORT_REGULAR - Domyślnie. Sortuj każde elementy w porządku standardowym.
- SORT_NUMERIC - Sortuj każde elementy w porządku numerycznym.
- SORT_STRING - Każdy element jest sortowany w porządku alfabetycznego.
Szczegóły techniczne
Zwracana wartość: | Zwraca TRUE, jeśli sukces, w przeciwnym razie FALSE. |
Wersja PHP: | 4+ |
Log zmian: |
Typy sortowania SORT_NATURAL i SORT_FLAG_CASE zostały dodane w PHP 5.4. Typ sortowania SORT_LOCALE_STRING został dodany w PHP 5.3. |
Więcej przykładów
Przykład 1
Zwróć tablicę posortowaną rosnąco:
<?php $a1=array("Dog","Cat"); $a2=array("Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Przykład 2
Jak sortować, gdy wartości są takie same:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Przykład 3
Użyj parametrów sortowania:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,SORT_ASC,$a2,SORT_DESC);; print_r($a1); print_r($a2); ?>
Przykład 4
Połącz dwa tablice i posortuj je w porządku malejącym:
<?php $a1=array(1,30,15,7,25); $a2=array(4,30,20,41,66); $num=array_merge($a1,$a2); array_multisort($num,SORT_DESC,SORT_NUMERIC);; print_r($num); ?>