Kazi usort
Kazi usort hupanga safu
kulingana na thamani ya vipengele, ikitumia
kolbek kuamua mpangilio
wa vipengele katika safu iliyopangwa.
Kazi hubadilisha safu yenyewe.
Kazi ya kulinganisha inapaswa kurudisha nambari kamili, ambayo kulingana na matokeo ya kulinganisha: chini ya sifuri, sawa na sifuri au zaidi ya sifuri.
Syntax
usort(array &$array, callable $callback): bool
Mfano
Wacha tupange safu kwa mpangilio wa kupanda wa vipengele:
<?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);
?>
Matokeo ya utekelezaji wa kodi:
[1, 2, 3, 4, 5]
Mfano
Sasa tupange safu kwa mpangilio wa kushuka wa vipengele:
<?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);
?>
Matokeo ya utekelezaji wa kodi:
[1, 2, 3, 4, 5]
Mfano
Sasa tupange safu kwa mpangilio wa kupanda wa idadi ya herufi katika vipengele vya safu:
<?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);
?>
Matokeo ya utekelezaji wa kodi:
[
'1',
'12',
'123',
'1234',
'12345',
]
Angalia pia
-
kazi
sort,
inayopanga kwa mpangilio wa kupanda wa vipengele -
kazi
rsort,
inayopanga kwa mpangilio wa kushuka wa vipengele -
kazi
ksort,
inayopanga kwa mpangilio wa kupanda wa funguo -
kazi
krsort,
inayopanga kwa mpangilio wa kushuka wa funguo -
kazi
asort,
inayopanga kwa mpangilio wa kupanda wa vipengele na kuhifadhi funguo -
kazi
arsort,
inayopanga kwa mpangilio wa kushuka wa vipengele na kuhifadhi funguo -
kazi
natsort,
inayopanga kwa njia ya asili -
kazi
natcasesort,
inayopanga kwa njia ya asili bila kubagua herufi kubwa na ndogo -
kazi
usort,
inayopanga kwa kolbek -
kazi
uksort,
inayopanga kwa kolbek kulingana na funguo -
kazi
uasort,
inayopanga kwa kolbek na kuhifadhi funguo -
kazi
array_multisort,
inayopanga safu nyingi