如何在 PHP 中对多维数组进行排序,同时保留键名?
作者:暮色微凉
时间:2024-05-06
浏览:0
PhpStorm macOS版
PhpStorm 是 JetBrains 推出的专业 PHP 集成开发环境,可在 Mac 上完成代码编写、智能检查、重构、调试、测试和数据库管理。它支持主流 PHP 框架、Composer、Git、Docker 与远程解释器。
¥890
Mac
2026-10-10
对多维数组同时保留键名排序:1.使用uksort(),根据键值进行排序,提供比较函数返回1、-1或0,指示键值的相对顺序。2.使用krsort(),对键值从高到低排序,接受一个数组参数。
对多维数组同时保留键名排序:1. 使用 uksort(),根据键值进行排序,提供比较函数返回1、-1或0,指示键值的相对顺序。2. 使用 krsort(),对键值从高到低排序,接受一个数组参数。

如何在 PHP 中对多维数组进行排序,同时保留键名
有时,您可能需要对一个多维数组进行排序,同时保留其键名。为此,PHP 提供了 uksort() 和 krsort() 函数。
uksort
uksort() 函数根据数组键的值对数组进行排序。它接受两个参数:一个包含要排序的数组和一个比较函数。比较函数应返回以下值之一:
- 1,如果数组的第一个元素应在第二个元素之前
- -1,如果数组的第一个元素应在第二个元素之后
- 0,如果数组的第一个元素等于第二个元素
"Germany",
"BMW" => "Germany",
"Toyota" => "Japan",
"Honda" => "Japan"
];
uksort($cars, function($a, $b) {
return strcmp($a, $b);
});
foreach ($cars as $key => $value) {
echo "$key: $value\n";
}
?>输出:
BMW: Germany Honda: Japan Mercedes: Germany Toyota: Japan
krsort
krsort() 函数对数组进行排序,并将键值从高到低排序。它接受一个参数,即要排序的数组。
"Germany",
"BMW" => "Germany",
"Toyota" => "Japan",
"Honda" => "Japan"
];
krsort($cars);
foreach ($cars as $key => $value) {
echo "$key: $value\n";
}
?>输出:
Toyota: Japan Honda: Japan Mercedes: Germany BMW: Germany
作者最新文章
3dmax安装失败全是叉怎么回事?原因及解决方法
2026-10-07 10:55
Win11系统WinRAR右键选项找不到怎么解决
2026-10-01 16:58
Photoshop文字外框怎么设置?给文字加边框的实用方法
2026-09-22 16:12
3dmax快捷键失效了怎么办
2026-09-16 13:53
Xiaomi 18 Fold首销数据解读:较上代大折叠增长310%的原因与配置分析
2026-09-08 16:55
热门文章
更多
精品专题
更多
Mac软件
更多
WINDOWS
更多










































