Sort()

Från Wiki.linux.se
Hoppa till navigering Hoppa till sök

sort

(PHP 4, PHP 5, PHP 7, PHP 8)

sort — Sortera en array i stigande ordning

Beskrivning

sort(array &$array, int $flags = SORT_REGULAR): true

Sorterar en array på plats efter värden i stigande ordning.

Notera:

Om två medlemmar jämförs som lika behåller de sin ursprungliga ordning. Före PHP 8.0.0 var deras relativa ordning i den sorterade arrayen odefinierad.

Notera: Denna funktion tilldelar nya nycklar till elementen i arrayen. Den kommer att ta bort eventuella befintliga nycklar som kan ha tilldelats, snarare än att bara omordna nycklarna.

Notera:

Återställer arrayens interna pekare till det första elementet.

Parametrar

array
Den input-array som ska sorteras.
flags
En valfri andra parameter flags kan användas för att modifiera sorteringsbeteendet med dessa värden:

Sorteringstypflaggor:

SORT_REGULAR
Jämför objekt normalt; detaljerna beskrivs i avsnittet om jämförelseoperatorer
SORT_NUMERIC
Jämför objekt numeriskt
SORT_STRING
Jämför objekt som strängar
SORT_LOCALE_STRING
Jämför objekt som strängar, baserat på aktuell lokalisering. Det använder lokaliseringen, som kan ändras med setlocale()
SORT_NATURAL
Jämför objekt som strängar med "naturlig ordning" som natsort()
SORT_FLAG_CASE
Kan kombineras (bitvis OR) med SORT_STRING eller SORT_NATURAL för att sortera strängar skiftlägesokänsligt

Returvärden

Returnerar alltid true.

Ändringslogg

Version Beskrivning
8.2.0 Returtypen är nu true; tidigare var det bool.

Exempel

Exempel #1 sort()-exempel

<?php
$fruits = array("lemon", "orange", "banana", "apple");
sort($fruits);
foreach ($fruits as $key => $val) {
    echo "fruits[" . $key . "] = " . $val . "\n";
}
?>

Exemplet ovan kommer att skriva ut:

fruits[0] = apple
fruits[1] = banana
fruits[2] = lemon
fruits[3] = orange

Frukterna har sorterats i alfabetisk ordning.

Exempel #2 sort()-exempel med skiftlägesokänslig naturlig ordning

<?php
$fruits = array(
    "Orange1", "orange2", "Orange3", "orange20"
);
sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
foreach ($fruits as $key => $val) {
    echo "fruits[" . $key . "] = " . $val . "\n";
}
?>

Exemplet ovan kommer att skriva ut:

fruits[0] = Orange1
fruits[1] = orange2
fruits[2] = Orange3
fruits[3] = orange20

Frukterna har sorterats som med natcasesort().

Se även

rsort() - Sorterar en array i fallande ordning
Sortering av Arrayer - Jämförelse av arraysorteringsfunktioner