Funkcija uasort
Funkcija uasort sortira niz
po rastućem redosledu elemenata, čuvajući
ključeve asocijativnog niza.
Funkcija uasort sortira niz
po vrednosti elemenata, koristeći za to
kolbek za određivanje redosleda
elemenata u sortiranom nizu.
Funkcija menja sam niz.
Funkcija za poređenje treba da vrati celi broj, koji u zavisnosti od rezultata poređenja: manji od, jednak ili veći od nule.
Funkcija menja sam niz.
Sintaksa
uasort(array &$array, int $flags = SORT_REGULAR): bool
Primer
Hajde da sortiramo niz po rastućem redosledu elemenata:
<?php
$arr = [
'b' => 1,
'e' => 3,
'c' => 2,
'a' => 5,
'd' => 4,
];
function func($a, $b)
{
if ($a === $b) {
return 0;
} else if ($a < $b) {
return -1;
} else {
return 1;
}
}
uasort($arr, 'func');
var_dump($arr);
?>
Rezultat izvršavanja koda:
[
'b' => 1,
'c' => 2,
'e' => 3,
'd' => 4,
'a' => 5,
]
Primer
A sada sortirajmo niz po rastućem broju karaktera u elementima niza:
<?php
$arr = [
'a' => '123',
'b' => '1',
'c' => '12345',
'd' => '12',
'e' => '1234',
];
function func($a, $b)
{
if (strlen($a) === strlen($b)) {
return 0;
} else if (strlen($a) < strlen($b)) {
return -1;
} else {
return 1;
}
}
uasort($arr, 'func');
var_dump($arr);
?>
Rezultat izvršavanja koda:
[
'b' => '1',
'd' => '12',
'a' => '123',
'e' => '1234',
'c' => '12345',
]
Pogledajte takođe
-
funkciju
sort,
koja sortira po rastućem redosledu elemenata -
funkciju
rsort,
koja sortira po opadajućem redosledu elemenata -
funkciju
ksort,
koja sortira po rastućem redosledu ključeva -
funkciju
krsort,
koja sortira po opadajućem redosledu ključeva -
funkciju
asort,
koja sortira po rastućem redosledu elemenata sačuvavajući ključeve -
funkciju
arsort,
koja sortira po opadajućem redosledu elemenata sačuvavajući ključeve -
funkciju
natsort,
koja sortira prirodnim redosledom -
funkciju
natcasesort,
koja sortira prirodnim redosledom bez obzira na veličinu slova -
funkciju
usort,
koja sortira po kolbeku -
funkciju
uksort,
koja sortira po kolbeku po ključevima -
funkciju
uasort,
koja sortira po kolbeku sačuvavajući ključeve -
funkciju
array_multisort,
koja sortira više nizova