Funksioni usort
Funksioni usort rendit një varg
sipas vlerës së elementeve, duke përdorur për
këtë një callback për të përcaktuar rendin
e elementeve në vargun e renditur.
Funksioni e ndryshon vetë vargun.
Funksioni i krahasimit duhet të kthejë një numër të plotë, i cili në varësi të rezultatit të krahasimit: më pak, e barabartë ose më e madhe se zero.
Sintaksa
usort(array &$array, callable $callback): bool
Shembull
Le ta renditim vargun në rend rritës të elementeve:
<?php
$arr = [1, 3, 2, 5, 4];
function func($a, $b)
{
if ($a === $b) {
return 0;
} else if ($a < $b) {
return -1;
} else {
return 1;
}
}
usort($arr, 'func');
var_dump($arr);
?>
Rezultati i ekzekutimit të kodit:
[1, 2, 3, 4, 5]
Shembull
Dhe tani le ta renditim vargun në rend zbritës të elementeve:
<?php
$arr = [1, 3, 2, 5, 4];
function func($a, $b)
{
if ($a === $b) {
return 0;
} else if ($a > $b) {
return -1;
} else {
return 1;
}
}
usort($arr, 'func');
var_dump($arr);
?>
Rezultati i ekzekutimit të kodit:
[1, 2, 3, 4, 5]
Shembull
Dhe tani le ta renditim vargun në rend rritës të numrit të karaktereve në elementët e vargut:
<?php
$arr = [
'123',
'1',
'12345',
'12',
'1234',
];
function func($a, $b)
{
if (strlen($a) === strlen($b)) {
return 0;
} else if (strlen($a) < strlen($b)) {
return -1;
} else {
return 1;
}
}
usort($arr, 'func');
var_dump($arr);
?>
Rezultati i ekzekutimit të kodit:
[
'1',
'12',
'123',
'1234',
'12345',
]
Shihni gjithashtu
-
funksionin
sort,
që rendit në rend rritës të elementeve -
funksionin
rsort,
që rendit në rend zbritës të elementeve -
funksionin
ksort,
që rendit në rend rritës të çelësave -
funksionin
krsort,
që rendit në rend zbritës të çelësave -
funksionin
asort,
që rendit në rend rritës të elementeve me ruajtje të çelësave -
funksionin
arsort,
që rendit në rend zbritës të elementeve me ruajtje të çelësave -
funksionin
natsort,
që rendit në mënyrë natyrale -
funksionin
natcasesort,
që rendit në mënyrë natyrale pa marrë parasysh shkronjat e mëdha e të vogla -
funksionin
usort,
që rendit sipas callback -
funksionin
uksort,
që rendit sipas callback për çelësat -
funksionin
uasort,
që rendit sipas callback me ruajtje të çelësave -
funksionin
array_multisort,
që rendit disa vargje