Funkcja PHP array_multisort()
Przykład
Zwróć posortowaną tablicę w kolejności rosnącej:
<?php
$a=array("Dog","Cat","Horse","Bear","Zebra");
array_multisort($a);
print_r($a);
?>
Definicja i użycie
Funkcja array_multisort() zwraca posortowaną tablicę. Możesz przypisać jedną lub więcej tablic. Funkcja sortuje pierwszą tablicę, a następnie kolejne tablice, a następnie, jeśli dwie lub więcej wartości jest takich samych, sortuje następną tablicę i tak dalej.
Uwaga: klawisze ciągów zostaną zachowane, ale klawisze numeryczne zostaną ponownie zindeksowane, zaczynając od 0 i zwiększając się o 1.
Uwaga: Po każdej tablicy można przypisać kolejność sortowania i parametry typu sortowania . Jeśli nie zostanie określony, każdy parametr szyku używa wartości domyślnych.
Składnia
array_multisort(array1, sortorder, sorttype, array2, array3, ...)
Wartości parametrów
Parameter | Description |
---|---|
array1 | Required. Specifies an array |
sortorder | Optional. Specifies the sorting order. Possible values:
|
sorttype | Optional. Specifies the type to use, when comparing elements. Possible values:
|
array2 | Optional. Specifies an array |
array3 | Optional. Specifies an array |
Szczegóły techniczne
Wartość zwrotu: | Zwraca TRUE w przypadku sukcesu lub FALSE w przypadku niepowodzenia |
---|---|
Wersja PHP: | 4+ |
Dziennik zmian PHP: | PHP 5.4: Dodano typ sortowania SORT_NATURAL i SORT_FLAG_CASE PHP 5.3: Dodano typ sortowania SORT_LOCALE_STRING |
Więcej przykładów
Przykład
Zwróć posortowaną tablicę w kolejności rosnącej:
<?php
$a1=array("Dog","Cat");
$a2=array("Fido","Missy");
array_multisort($a1,$a2);
print_r($a1);
print_r($a2);
?>
Przykład
Zobacz, jak sortuje, gdy dwie 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
Za pomocą 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
Połącz dwie tablice i posortuj je jako liczby w kolejności malejącej:
<?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);
?>
❮ Odniesienie do tablicy PHP