按值排序(由小到大)
asort
键值关系保留
$arr = [4,3,2,5];
asort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [2] => 2
// [1] => 3
// [0] => 4
// [3] => 5
// )
uasort
键值关系保留
$arr = [4,3,2,5];
uasort($arr, function ($a, $b) {
return $a <=> $b;
});
print_r($arr);
// ----- output -----
// Array
// (
// [2] => 2
// [1] => 3
// [0] => 4
// [3] => 5
// )
sort
键值关系重新建立
$arr = [4,3,2,5];
sort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 2
// [1] => 3
// [2] => 4
// [3] => 5
// )
usort
键值关系重新建立
$arr = [4,3,2,5];
usort($arr, function ($a, $b) {
return $a <=> $b;
});
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 2
// [1] => 3
// [2] => 4
// [3] => 5
// )
按值排序(由大到小)
arsort
键值关系保留
$arr = [4,3,2,5];
arsort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [3] => 5
// [0] => 4
// [1] => 3
// [2] => 2
// )
uasort
键值关系保留
$arr = [4,3,2,5];
uasort($arr, function ($a, $b) {
return -($a <=> $b);
});
print_r($arr);
// ----- output -----
// Array
// (
// [3] => 5
// [0] => 4
// [1] => 3
// [2] => 2
// )
rsort
键值关系重新建立
$arr = [4,3,2,5];
rsort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 5
// [1] => 4
// [2] => 3
// [3] => 2
// )
usort
键值关系重新建立
$arr = [4,3,2,5];
usort($arr, function ($a, $b) {
return -($a <=> $b);
});
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 5
// [1] => 4
// [2] => 3
// [3] => 2
// )
按键排序(由小到大)
按键排序的函数,全部是键值关系保留
ksort
$arr = [1 => 4, 2 => 3, 3 => 2, 0 => 5];
ksort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 5
// [1] => 4
// [2] => 3
// [3] => 2
// )
uksort
$arr = [1 => 4, 2 => 3, 3 => 2, 0 => 5];
uksort($arr, function ($a, $b) {
return $a <=> $b;
});
print_r($arr);
// ----- output -----
// Array
// (
// [0] => 5
// [1] => 4
// [2] => 3
// [3] => 2
// )
按键排序(由大到小)
krsort
$arr = [1 => 4, 2 => 3, 3 => 2, 0 => 5];
krsort($arr);
print_r($arr);
// ----- output -----
// Array
// (
// [3] => 2
// [2] => 3
// [1] => 4
// [0] => 5
// )
uksort
$arr = [1 => 4, 2 => 3, 3 => 2, 0 => 5];
uksort($arr, function ($a, $b) {
return -($a <=> $b);
});
print_r($arr);
// ----- output -----
// Array
// (
// [3] => 2
// [2] => 3
// [1] => 4
// [0] => 5
// )
数组乱序
shuffle($arr);