Функсияи usort
Функсияи usort массивро
мувофиқи қимати унсурҳо ҷудо мекунад, барои
ин аз callback истифода бурда мешавад, то тартиби
унсурҳоро дар массиви ҷудошуда муайян кунад.
Функсия худи массивро тағйир медиҳад.
Функсияи муқоиса бояд адади бутун баргардонад, ки вобаста ба натиҷаи муқоиса: аз сифр хурдтар, баробар ё бузургтар бошад.
Синтаксис
usort(array &$array, callable $callback): bool
Намуна
Биёед массивро мувофиқи афзоиши унсурҳо ҷудо кунем:
<?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);
?>
Натиҷаи иҷрои код:
[1, 2, 3, 4, 5]
Намуна
Ва акнун массивро мувофиқи коҳиши унсурҳо ҷудо кунем:
<?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);
?>
Натиҷаи иҷрои код:
[1, 2, 3, 4, 5]
Намуна
Ва акнун массивро мувофиқи афзоиши миқдори аломатҳо дар унсурҳои массив ҷудо кунем:
<?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);
?>
Натиҷаи иҷрои код:
[
'1',
'12',
'123',
'1234',
'12345',
]
Инчунин бинед
-
функсияи
sort,
ки мувофиқи афзоиши унсурҳо ҷудо мекунад -
функсияи
rsort,
ки мувофиқи коҳиши унсурҳо ҷудо мекунад -
функсияи
ksort,
ки мувофиқи афзоиши калидҳо ҷудо мекунад -
функсияи
krsort,
ки мувофиқи коҳиши калидҳо ҷудо мекунад -
функсияи
asort,
ки мувофиқи афзоиши унсурҳо бо нигоҳ доштани калидҳо ҷудо мекунад -
функсияи
arsort,
ки мувофиқи коҳиши унсурҳо бо нигоҳ доштани калидҳо ҷудо мекунад -
функсияи
natsort,
ки ба табиии тарз ҷудо мекунад -
функсияи
natcasesort,
ки ба табиии тарз бе дарназардошти ҳолат ҷудо мекунад -
функсияи
usort,
ки мувофиқи callback ҷудо мекунад -
функсияи
uksort,
ки мувофиқи callback мувофиқи калидҳо ҷудо мекунад -
функсияи
uasort,
ки мувофиқи callback бо нигоҳ доштани калидҳо ҷудо мекунад -
функсияи
array_multisort,
ки чанд массивро ҷудо мекунад