本文主要和大家介绍了php实现根据数组某个键值大小进行排序的方法,涉及php针对数组的遍历、排序等相关操作技巧,需要的朋友可以参考下,希望能帮助到大家。
问题:针对给定数组的某个键的键值进行排序
解决方法:
//$a是排序数组,$b是要排序的数据集合,$result是最终结果
$b = array(
array('name'=>'北京','nums'=>'200'),
array('name'=>'上海','nums'=>'80'),
array('name'=>'广州','nums'=>'150'),
array('name'=>'深圳','nums'=>'70')
);
$a = array();
foreach($b as $key=>$val){
$a[] = $val['nums'];//这里要注意$val['nums']不能为空,不然后面会出问题
}
//$a先排序
rsort($a);
$a = array_flip($a);
$result = array();
foreach($b as $k=>$v){
$temp1 = $v['nums'];
$temp2 = $a[$temp1];
$result[$temp2] = $v;
}
//这里还要把$result进行排序,健的位置不对
ksort($result);
//然后就是你想看到的结果了
var_dump($result);运行结果:
array(4) {
[0]=>
array(2) {
["name"]=>
string(4) "北京"
["nums"]=>
string(3) "200"
}
[1]=>
array(2) {
["name"]=>
string(4) "广州"
["nums"]=>
string(3) "150"
}
[2]=>
array(2) {
["name"]=>
string(4) "上海"
["nums"]=>
string(2) "80"
}
[3]=>
array(2) {
["name"]=>
string(4) "深圳"
["nums"]=>
string(2) "70"
}
}相关推荐:
立即学习“PHP免费学习笔记(深入)”;
以上就是PHP根据数组某个键值大小进行排序的详细内容,更多请关注php中文网其它相关文章!
PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号