在本章中,我们将一一介绍下列 PHP 数组排序函数:
数值数组
- sort() - 对数组进行升序排列
<?php
$cars=array("Volvo","BMW","Toyota");
sort($cars);
var_dump($cars);
?>
输出如下:
array(3) {
[0]=>
string(3) "BMW"
[1]=>
string(6) "Toyota"
[2]=>
string(5) "Volvo"
}
如此可以看出,sort函数可以对数组进行升序排序。
- rsort() - 对数组进行降序排列
<?php
$cars=array("Volvo","BMW","Toyota");
rsort($cars);
var_dump($cars);
?>
下面是输出结果:
array(3) {
[0]=>
string(5) "Volvo"
[1]=>
string(6) "Toyota"
[2]=>
string(3) "BMW"
}
看了上面这两个函数的输出结果,我们可以看出来,这是这是两个对数值数组进行排序,前者是升序,后者是降序。
关联数组
- asort() - 根据关联数组的值,对数组进行升序排列
<?php
$stu = array(
"meimei" => "201901",
"xiaoxiao" => "201902",
"longmao" => "201903"
);
asort($stu);
var_dump($stu);
?>
下面是输出结果:
array(3) {
["meimei"]=>
string(6) "201901"
["xiaoxiao"]=>
string(6) "201902"
["longmao"]=>
string(6) "201903"
}
- ksort() - 根据关联数组的键,对数组进行升序排列
<?php
$stu = array(
"meimei" => "201901",
"xiaoxiao" => "201902",
"longmao" => "201903"
);
ksort($stu);
var_dump($stu);
?>
输出结果如下:
array(3) {
["longmao"]=>
string(6) "201903"
["meimei"]=>
string(6) "201901"
["xiaoxiao"]=>
string(6) "201902"
}
- arsort() - 根据关联数组的值,对数组进行降序排列
<?php
$stu = array(
"meimei" => "201901",
"xiaoxiao" => "201902",
"longmao" => "201903"
);
arsort($stu);
var_dump($stu);
?>
输出结果如下:
array(3) {
["longmao"]=>
string(6) "201903"
["xiaoxiao"]=>
string(6) "201902"
["meimei"]=>
string(6) "201901"
}
- krsort() - 根据关联数组的键,对数组进行降序排列
<?php
$stu = array(
"meimei" => "201901",
"xiaoxiao" => "201902",
"longmao" => "201903"
);
krsort($stu);
var_dump($stu);
?>
输出结果如下:
array(3) {
["xiaoxiao"]=>
string(6) "201902"
["meimei"]=>
string(6) "201901"
["longmao"]=>
string(6) "201903"
}
总结
k代表的是键,r代表的是降序。