Функция uasort
Функцията uasort сортира масив
по възходящ ред на елементите, запазвайки
ключовете на асоциативния масив.
Функцията uasort сортира масив
по стойност на елементите, използвайки за
това callback за определяне на реда
на елементите в сортирания масив.
Функцията променя самия масив.
Функцията за сравнение трябва да връща цяло число, което в зависимост от резултата от сравнението: по-малко, равно или по-голямо от нула.
Функцията променя самия масив.
Синтаксис
uasort(array &$array, int $flags = SORT_REGULAR): bool
Пример
Нека сортираме масив по възходящ ред на елементите:
<?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);
?>
Резултат от изпълнението на кода:
[
'b' => 1,
'c' => 2,
'e' => 3,
'd' => 4,
'a' => 5,
]
Пример
А сега нека сортираме масива по възходящ ред на броя символи в елементите на масива:
<?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);
?>
Резултат от изпълнението на кода:
[
'b' => '1',
'd' => '12',
'a' => '123',
'e' => '1234',
'c' => '12345',
]
Вижте също
-
функцията
sort,
която сортира по възходящ ред на елементите -
функцията
rsort,
която сортира по низходящ ред на елементите -
функцията
ksort,
която сортира по възходящ ред на ключовете -
функцията
krsort,
която сортира по низходящ ред на ключовете -
функцията
asort,
която сортира по възходящ ред на елементите със запазване на ключовете -
функцията
arsort,
която сортира по низходящ ред на елементите със запазване на ключовете -
функцията
natsort,
която сортира по естествен начин -
функцията
natcasesort,
която сортира по естествен начин без значение на регистъра -
функцията
usort,
която сортира чрез callback -
функцията
uksort,
която сортира чрез callback по ключовете -
функцията
uasort,
която сортира чрез callback със запазване на ключовете -
функцията
array_multisort,
която сортира няколко масива