开发者社区> 余二五> 正文

php对二维数组进行排序

简介:
+关注继续查看

这几天一直忙于公司某个系统的开发,没来得及更新,真是罪过。

php对二维数组的排序其实很简单,但要是不知道array_multisort这个函数就比较费事了。

这个函数的用法举例如下:


  1. $data = array(); 
  2. $data[] = array('volume' => 67, 'edition' => 2); 
  3. $data[] = array('volume' => 86, 'edition' => 1); 
  4. $data[] = array('volume' => 85, 'edition' => 6); 
  5. $data[] = array('volume' => 98, 'edition' => 2); 
  6. $data[] = array('volume' => 86, 'edition' => 6); 
  7. $data[] = array('volume' => 67, 'edition' => 7); 
  8.  
  9. // 取得列的列表 
  10. foreach ($data as $key => $row
  11.     $volume[$key]  = $row['volume']; 
  12.     $edition[$key] = $row['edition']; 
  13.  
  14. array_multisort($volume, SORT_DESC, $edition, SORT_ASC, $data); 
  15.  
  16. print_r($data); 

输出:


  1. Array 
  2.     [0] => Array 
  3.         ( 
  4.             [volume] => 98 
  5.             [edition] => 2 
  6.         ) 
  7.  
  8.     [1] => Array 
  9.         ( 
  10.             [volume] => 86 
  11.             [edition] => 1 
  12.         ) 
  13.  
  14.     [2] => Array 
  15.         ( 
  16.             [volume] => 86 
  17.             [edition] => 6 
  18.         ) 
  19.  
  20.     [3] => Array 
  21.         ( 
  22.             [volume] => 85 
  23.             [edition] => 6 
  24.         ) 
  25.  
  26.     [4] => Array 
  27.         ( 
  28.             [volume] => 67 
  29.             [edition] => 2 
  30.         ) 
  31.  
  32.     [5] => Array 
  33.         ( 
  34.             [volume] => 67 
  35.             [edition] => 7 
  36.         ) 
  37.  

这个函数的参数非常灵活,大家可以对照手册仔细研究下。










本文转自 ustb80 51CTO博客,原文链接:http://blog.51cto.com/ustb80/1079938,如需转载请自行联系原作者

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
php检测值是否存在二维数组
php检测值是否存在二维数组
15 0
PHP:二维数组查找元素值并且返回下标
PHP:二维数组查找元素值并且返回下标
71 0
PHP面试题:写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数(array_multisort())
PHP面试题:写一个二维数组排序算法函数,能够具有通用性,可以调用php内置函数(array_multisort())
75 0
PHP:二维数组查找元素值并且返回下标
PHP:二维数组查找元素值并且返回下标
193 0
PHP二维数组切割为字符串并去除重复的值
PHP二维数组切割为字符串并去除重复的值 应用场景在于需要查询出某一个rent_contract_id所有有关的id及rent_contract_parent_id,然后组装成字符串便于后期使用FIND_IN_SET进行查询操作: // select rent_contract_id,rent.
1345 0
PHP一维数组转二维数组正则表达式
2017年11月20日17:17:08 array(1 => '哈哈')  变成  array('id' => 1, 'name' => '哈哈') 查找目标:  (\d)\s=>\s('[\w\(\)]+') 替换: array\('id' => $1, 'name' => $2\) 工具...
1035 0
PHP 把MYSQL重复ID 二维数组重组为三维数组
应用场景 MYSQL在使用关联查询时,比如 产品表 与 产品图片表关联,一个产品多张产品图片,关联查询结果如下: $arr=[['id'=>1,'img'=>'img1'],['id'=>1,'img'=>'img2'],['id'=>1,'img'=>'img3'],['id'=>2,'i...
1027 0
+关注
余二五
文章
问答
视频
文章排行榜
最热
最新
相关电子书
更多
PHP 2017.北京 全球开发者大会——高可用的PHP
立即下载
低代码开发师(初级)实战教程
立即下载
阿里巴巴DevOps 最佳实践手册
立即下载
相关实验场景
更多