PHP functie array_multisort()
Voorbeeld
Geef een array terug die in oplopende volgorde is gesorteerd:
<?php $a = array("Dog", "Cat", "Horse", "Bear", "Zebra"); array_multisort($a);; print_r($a); ?>
Definitie en gebruik
De functie array_multisort() retourneert een gesorteerde array. U kunt één of meerdere arrays invoeren. De functie sorteert eerst de eerste array, gevolgd door de andere arrays, en sorteert de volgende array als twee of meer waarden hetzelfde zijn.
Opmerking:String-sleutels worden behouden, maar numerieke sleutels worden opnieuw geïndexeerd, beginnend bij 0 en met 1 verhoogend.
Opmerking:Je kunt sorteervolgorde en sorteertype instellen achter elke array. Als dit niet is ingesteld, wordt elke arrayparameter de standaardwaarde gebruikt.
Syntax
array_multisort(array1,sorting order,sorting type,array2,array3...)
Parameters | Beschrijving |
---|---|
array1 | Verplicht. Specificeer een array. |
sorting order |
Optioneel. Specificeer de volgorde. Mogelijke waarden:
|
sorting type |
Optioneel. Specificeer het sorteertype. Mogelijke waarden:
|
array2 | Optioneel. Specificeer een array. |
array3 | Optioneel. Specificeer een array. |
Beschrijving
De functie array_multisort() sorteert meerdere arrays of meerdimensionale arrays.
De array in de parameter wordt beschouwd als een kolom van een tabel en gesorteerd op rij - dit is vergelijkbaar met de functie van de ORDER BY-clause in SQL. De eerste array is de belangrijkste array die gesorteerd moet worden. Als de rijen (waarden) in de array vergelijkbaar zijn, wordt gesorteerd op de grootte van de overeenkomstige waarden in de volgende invoerarray, enz.
De eerste parameter is een array, de volgende parameters kunnen een array zijn of een van de volgende sorteerindicatoren (sorteerindicatoren worden gebruikt om de standaard volgorde te wijzigen):
- SORT_ASC - Standaard, sorteer in oplopende volgorde. (A-Z)
- SORT_DESC - Sorteer in aflopende volgorde. (Z-A)
Vervolgens kan je het type sortering specificeren:
- SORT_REGULAR - Standaard. Sorteer elk item in de standaard volgorde.
- SORT_NUMERIC - Sorteer elk item in numerieke volgorde.
- SORT_STRING - Stel elk item in alfabetische volgorde in.
Technische details
Retournerende waarde: | Retourneert TRUE als het succesvol is, anders FALSE. |
PHP Versie: | 4+ |
Update log: |
De sorteerTypes SORT_NATURAL en SORT_FLAG_CASE zijn toegevoegd in PHP 5.4. De sorteertype SORT_LOCALE_STRING is toegevoegd in PHP 5.3. |
Meer voorbeelden
Voorbeeld 1
Geef een array terug die in oplopende volgorde is gesorteerd:
<?php $a1=array("Dog","Cat"); $a2=array("Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Voorbeeld 2
Hoe sorteren bij gelijke waarden:
<?php $a1=array("Dog","Dog","Cat"); $a2=array("Pluto","Fido","Missy"); array_multisort($a1,$a2);; print_r($a1); print_r($a2); ?>
Voorbeeld 3
Gebruik sorteerparameters:
<?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); ?>
Voorbeeld 4
Voeg twee arrays samen en sorteer ze in numerieke aflopende volgorde:
<?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); ?>