本教程操作环境:windows7系统、PHP7.1版、DELL G3电脑
php数组实现键值不变倒序(降序)排序
1、使用rsort()函数
rsort() 函数对数值数组进行降序排序。
<?php
header("Content-type:text/html;charset=utf-8");
$arr = array(2, 1, 5, 16, 29, 15);
echo "原数组:";
var_dump($arr);
echo "倒序排序后:";
rsort($arr);
var_dump($arr);
?>
2、使用arsort()函数
arsort() 函数对关联数组按照键值进行降序排序。
<?php
header("Content-type:text/html;charset=utf-8");
$age = array("张三"=>30,"李四"=>23,"王五"=>15,"李华"=>12,"娜娜"=>26,"小红"=>16);
arsort($age);
var_dump($age);
arsort($age,2);
var_dump($age);
?>
说明:
rsort()函数和arsort() 函数都支持两个参数,第二个参数可省略,可规定如何排列数组的元素/项目,可能的值:
0 = SORT_REGULAR - 默认。把每一项按常规顺序排列(Standard ASCII,不改变类型)。
1 = SORT_NUMERIC - 把每一项作为数字来处理。
2 = SORT_STRING - 把每一项作为字符串来处理。
3 = SORT_LOCALE_STRING - 把每一项作为字符串来处理,基于当前区域设置(可通过 setlocale() 进行更改)。
4 = SORT_NATURAL - 把每一项作为字符串来处理,使用类似 natsort() 的自然排序。
5 = SORT_FLAG_CASE - 可以结合(按位或)SORT_STRING 或 SORT_NATURAL 对字符串进行排序,不区分大小写。