Função uksort
A função uksort ordena um array
pelo valor dos elementos, usando um
callback para determinar a ordem
dos elementos no array ordenado.
A função modifica o próprio array.
A função de comparação deve retornar um número inteiro, que dependendo do resultado da comparação: menor, igual ou maior que zero.
Sintaxe
uksort(array &$array, int $flags = SORT_REGULAR): bool
Exemplo
Vamos ordenar o array em ordem crescente de chaves:
<?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;
}
}
uksort($arr, 'func');
var_dump($arr);
?>
Resultado da execução do código:
[
'a' => 5,
'b' => 1,
'c' => 2,
'd' => 4,
'e' => 3,
]
Veja também
-
a função
sort,
que ordena em ordem crescente de elementos -
a função
rsort,
que ordena em ordem decrescente de elementos -
a função
ksort,
que ordena em ordem crescente de chaves -
a função
krsort,
que ordena em ordem decrescente de chaves -
a função
asort,
que ordena em ordem crescente de elementos preservando chaves -
a função
arsort,
que ordena em ordem decrescente de elementos preservando chaves -
a função
natsort,
que ordena de forma natural -
a função
natcasesort,
que ordena de forma natural sem diferenciar maiúsculas/minúsculas -
a função
usort,
que ordena por callback -
a função
uksort,
que ordena por callback por chaves -
a função
uasort,
que ordena por callback preservando chaves -
a função
array_multisort,
que ordena múltiplos arrays