Функцыя uasort
Функцыя uasort
сартуе масіў
па ўзрастанні элементаў, захоўваючы
ключы асацыятыўнага масіва.
Функцыя uasort
сартуе масіў
па значэнні элементаў, выкарыстоўваючы для
гэтага зваротную функцыю для вызначэння парадку
элементаў у адсартаваным масіве.
Функцыя змяняе сам масіў.
Функцыя параўнання павінна вяртаць цэлы лік, якое ў залежнасці ад выніку параўнання: менш, роўна або больш за нуль.
Функцыя змяняе сам масіў.
Сінтаксіс
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
,
якая сартуе па зваротнай функцыі -
функцыю
uksort
,
якая сартуе па зваротнай функцыі па ключах -
функцыю
uasort
,
якая сартуе па зваротнай функцыі з захаваннем ключоў -
функцыю
array_multisort
,
якая сартуе некалькі масіваў