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实现框架(一)
Oct 09 PHP
在Windows版的PHP中使用ADO
Oct 09 PHP
基于php iconv函数的使用详解
Jun 09 PHP
php正则preg_replace_callback函数用法实例
Jun 01 PHP
ThinkPHP模板循环输出Volist标签用法实例详解
Mar 23 PHP
详谈PHP面向对象中常用的关键字和魔术方法
Feb 04 PHP
php微信开发之音乐回复功能
Jun 14 PHP
thinkPHP5框架闭包函数与子查询传参用法示例
Aug 02 PHP
phpStorm+XDebug+chrome 配置详解
Apr 01 PHP
Smarty模板类内部原理实例分析
Jul 03 PHP
php解决约瑟夫环算法实例分析
Sep 30 PHP
分享几种好用的PHP自定义加密函数(可逆/不可逆)
Sep 15 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
PHP 字符截取 解决中文的截取问题,不用mb系列
2009/09/29 PHP
php URL验证正则表达式
2011/07/19 PHP
PHP中register_globals参数为OFF和ON的区别(register_globals 使用详解)
2012/02/05 PHP
php微信高级接口群发 多客服
2016/06/23 PHP
PHP使用new StdClass()创建空对象的方法分析
2017/06/06 PHP
Jquery + Ajax调用webService实例代码(asp.net)
2010/08/27 Javascript
js中单引号与双引号冲突问题解决方法
2013/10/04 Javascript
分享一款基于jQuery的视频播放插件
2014/10/09 Javascript
JavaScript构建自己的对象示例
2016/11/29 Javascript
vue增删改查的简单操作
2017/07/15 Javascript
JavaScript控制浏览器全屏显示简单示例
2018/07/05 Javascript
node实现分片下载的示例代码
2018/10/17 Javascript
js字符串倒序的实例代码
2018/11/30 Javascript
发布Angular应用至生产环境的方法
2018/12/10 Javascript
加快Vue项目的开发速度的方法
2018/12/12 Javascript
微信小程序云开发实现数据添加、查询和分页
2019/05/17 Javascript
JS/jQuery实现超简单的Table表格添加,删除行功能示例
2019/07/31 jQuery
Node绑定全局TraceID的实现方法
2019/11/14 Javascript
wxPython事件驱动实例详解
2014/09/28 Python
用tensorflow搭建CNN的方法
2018/03/05 Python
python3+requests接口自动化session操作方法
2018/10/13 Python
自学python的建议和周期预算
2019/01/30 Python
如何基于Python制作有道翻译小工具
2019/12/16 Python
在django中使用apscheduler 执行计划任务的实现方法
2020/02/11 Python
Python调用shell命令常用方法(4种)
2020/05/11 Python
django下创建多个app并设置urls方法
2020/08/02 Python
Carmen Sol官网:购买果冻鞋、手袋和配件
2021/01/01 全球购物
毕业自荐信
2013/12/16 职场文书
党员2014两会学习心得体会
2014/03/17 职场文书
节能宣传周活动总结
2014/05/08 职场文书
后备干部推荐材料
2014/12/24 职场文书
社会实践活动总结
2015/02/05 职场文书
2014年底个人工作总结
2015/03/10 职场文书
超市食品安全承诺书
2015/04/29 职场文书
学校后勤工作总结2015
2015/05/15 职场文书
阿里云国际版 使用Nginx作为HTTPS转发代理服务器
2022/05/11 Servers