PHP实现根据数组某个键值大小进行排序的方法


Posted in PHP onMarch 13, 2018

本文实例讲述了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数组交集的优化代码分析
Mar 06 PHP
php实现aes加密类分享
Feb 16 PHP
php中sprintf与printf函数用法区别解析
Feb 17 PHP
php判断字符串在另一个字符串位置的方法
Feb 27 PHP
jquery+php实现导出datatables插件数据到excel的方法
Jul 06 PHP
Yii2超好用的日期和时间组件(值得收藏)
May 05 PHP
PHP学习笔记之php文件操作
Jun 03 PHP
cakephp2.X多表联合查询join及使用分页查询的方法
Feb 23 PHP
Yii2.0多文件上传实例说明
Jul 24 PHP
浅谈thinkphp5 instance 的简单实现
Jul 30 PHP
PHP中命名空间的使用例子
Mar 22 PHP
Laravel5.1 框架Request请求操作常见用法实例分析
Jan 04 PHP
Laravel多用户认证系统示例详解
Mar 13 #PHP
PHP简单实现防止SQL注入的方法
Mar 13 #PHP
PHP+JS实现的实时搜索提示功能
Mar 13 #PHP
PHP实现的简单路由和类自动加载功能
Mar 13 #PHP
php生成复杂验证码(倾斜,正弦干扰线,黏贴,旋转)
Mar 12 #PHP
php把字符串指定字符分割成数组的方法
Mar 12 #PHP
bindParam和bindValue的区别以及在Yii2中的使用详解
Mar 12 #PHP
You might like
教你IIS6的PHP最佳配置方法
2006/09/05 PHP
PHP 程序员的调试技术小结
2009/11/15 PHP
php使用COPY函数更新配置文件的方法
2015/06/18 PHP
PHP魔术方法之__call与__callStatic使用方法
2017/07/23 PHP
提高代码性能技巧谈—以创建千行表格为例
2006/07/01 Javascript
第一个JavaScript入门基础 document.write输出
2010/02/22 Javascript
JavaScript页面刷新与弹出窗口问题的解决方法
2010/03/02 Javascript
jquery ajax 局部无刷新更新数据的实现案例
2014/02/08 Javascript
JavaScript对Cookie进行读写操作实例
2015/07/25 Javascript
多种js图片预加载实现方式分享
2016/02/19 Javascript
分享jQuery封装好的一些常用操作
2016/07/28 Javascript
AngularJS 视图详解及示例代码
2016/08/17 Javascript
JavaScript中全选、全不选、反选、无刷新删除、批量删除、即点即改入库(在yii框架中操作)的代码分享
2016/11/01 Javascript
Vue开发过程中遇到的疑惑知识点总结
2017/01/20 Javascript
JavaScript 上传文件(psd,压缩包等),图片,视频的实现方法
2017/06/19 Javascript
Vue 2.0的数据依赖实现原理代码简析
2017/07/10 Javascript
Bootstrap treeview实现动态加载数据并添加快捷搜索功能
2018/01/07 Javascript
JavaScript实现数组全排列、去重及求最大值算法示例
2018/07/30 Javascript
100行代码实现一个vue分页组功能
2018/11/06 Javascript
js/jQuery实现全选效果
2019/06/17 jQuery
vue项目出现页面空白的解决方案
2019/10/31 Javascript
JS document对象简单用法完整示例
2020/01/14 Javascript
JavaScript隐式类型转换代码实例
2020/05/29 Javascript
Vue Render函数原理及代码实例解析
2020/07/30 Javascript
[04:29]【TI9采访】OG.N0tail在胜者组决赛后接受采访
2019/08/25 DOTA
Python实现可设置持续运行时间、线程数及时间间隔的多线程异步post请求功能
2018/01/11 Python
pytorch 图像中的数据预处理和批标准化实例
2020/01/15 Python
CSS3实现的炫酷菜单代码分享
2015/03/12 HTML / CSS
纯CSS3实现的井字棋游戏
2020/11/25 HTML / CSS
Speedo速比涛中国官方网站:全球领先泳装运动品牌
2018/04/24 全球购物
医学护理毕业生自荐信
2013/11/07 职场文书
专业幼师实习生自我鉴定范文
2013/12/08 职场文书
一名女生的自荐信
2013/12/08 职场文书
省级优秀毕业生主要事迹
2014/05/29 职场文书
个人四风问题对照检查材料思想汇报
2014/10/06 职场文书
赞助商致辞
2015/07/30 职场文书