Fungsi usort
Fungsi usort mengurutkan array
berdasarkan nilai elemen, menggunakan
callback untuk menentukan urutan
elemen dalam array yang diurutkan.
Fungsi ini mengubah array itu sendiri.
Fungsi perbandingan harus mengembalikan bilangan bulat, yang tergantung pada hasil perbandingan: kurang dari, sama dengan, atau lebih dari nol.
Sintaks
usort(array &$array, callable $callback): bool
Contoh
Mari urutkan array dalam urutan menaik elemen:
<?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);
?>
Hasil eksekusi kode:
[1, 2, 3, 4, 5]
Contoh
Sekarang mari urutkan array dalam urutan menurun elemen:
<?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);
?>
Hasil eksekusi kode:
[1, 2, 3, 4, 5]
Contoh
Sekarang mari urutkan array berdasarkan jumlah karakter dalam elemen array:
<?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);
?>
Hasil eksekusi kode:
[
'1',
'12',
'123',
'1234',
'12345',
]
Lihat juga
-
fungsi
sort,
yang mengurutkan dalam urutan menaik elemen -
fungsi
rsort,
yang mengurutkan dalam urutan menurun elemen -
fungsi
ksort,
yang mengurutkan dalam urutan menaik kunci -
fungsi
krsort,
yang mengurutkan dalam urutan menurun kunci -
fungsi
asort,
yang mengurutkan dalam urutan menaik elemen dengan menjaga kunci -
fungsi
arsort,
yang mengurutkan dalam urutan menurun elemen dengan menjaga kunci -
fungsi
natsort,
yang mengurutkan secara natural -
fungsi
natcasesort,
yang mengurutkan secara natural tanpa memperhatikan huruf besar/kecil -
fungsi
usort,
yang mengurutkan berdasarkan callback -
fungsi
uksort,
yang mengurutkan berdasarkan callback untuk kunci -
fungsi
uasort,
yang mengurutkan berdasarkan callback dengan menjaga kunci -
fungsi
array_multisort,
yang mengurutkan beberapa array