PHP中数组的分组排序实例


Posted in PHP onJune 01, 2014

PHP的数组,数组中的内容大致如下:

$list = array(
    array(2,3,5),
    array(2,5,24),
    array(3,8,6),
    array(3,2,10),
    array(4,7,20),
    array(4,1,15),
    array(6,4,10),
    array(7,9,20),
    );

为了方便表达,我把3列数字分别称为,ABC三列

需求:默认以A列排序为主,如果A列相同则以C列倒序排列相同的元素。B列其实没有参与排序,但是在实际运用中有用,所以我也写出来了。

方法一:

$a = $c = array();
foreach($list as $val){
    $a[] = $val[0]; //a列
    $c[] = $val[2]; //c列
}
//安装a列升序,然后安装b列降序 , 类似sql,orderby a asc,b desc
array_multisort($a,SORT_ASC , $c, SORT_DESC, $list);
print_r($list);

方法二:
for($j=0;$j<count($list);$j++) {
    for($i=count($list)-1;$i>$j;$i--){
        if($list[$i][0] == $list[$i-1][0] && $list[$i][2] > $list[$i-1][2])
            list($list[$i],$list[$i-1]) = array($list[$i-1],$list[$i]);
    }
}
PHP 相关文章推荐
PHP音乐采集(部分代码)
Feb 14 PHP
一些使用频率比较高的php函数
Oct 03 PHP
延长phpmyadmin登录时间的方法
Feb 06 PHP
php 数组的指针操作实现代码
Feb 08 PHP
Yii中CGridView关联表搜索排序方法实例详解
Dec 03 PHP
php实现搜索一维数组元素并删除二维数组对应元素的方法
Jul 06 PHP
PHP 在数组中搜索给定的简单实例 array_search 函数
Jun 13 PHP
php自定义函数实现二维数组排序功能
Jul 20 PHP
PHP使用redis消息队列发布微博的方法示例
Jun 22 PHP
关于ThinkPhp 框架表单验证及ajax验证问题
Jul 19 PHP
thinkphp5框架API token身份验证功能示例
May 21 PHP
ThinkPHP5.1框架数据库链接和增删改查操作示例
Aug 03 PHP
php_screw安装使用教程(另一个PHP代码加密实现)
May 29 #PHP
PHP Curl出现403错误的解决办法
May 29 #PHP
PHP的foreach中使用引用时需要注意的一个问题和解决方法
May 29 #PHP
神盾加密解密教程(一)PHP变量可用字符
May 28 #PHP
CI框架开发新浪微博登录接口源码完整版
May 28 #PHP
PHP+javascript制作带提示的验证码源码分享
May 28 #PHP
微信支付开发教程(一)微信支付URL配置
May 28 #PHP
You might like
星际争霸任务指南——人族
2020/03/04 星际争霸
初识php MVC
2014/09/10 PHP
js二维数组定义和初始化的三种方法总结
2014/03/03 Javascript
使用jquery写个更改表格行顺序的小功能
2014/04/29 Javascript
浅谈jQuery中 wrap() wrapAll() 与 wrapInner()的差异
2014/11/12 Javascript
百度地图自定义控件分享
2015/03/04 Javascript
jquery网页加载进度条的实现
2017/06/01 jQuery
简单的vuex 的使用案例笔记
2018/04/13 Javascript
NodeJS安装图文教程
2018/04/19 NodeJs
Vue 列表上下过渡效果的实例代码
2019/06/25 Javascript
uni-app使用微信小程序云函数的步骤示例
2020/05/22 Javascript
Vue实现多页签组件
2021/01/14 Vue.js
[02:35]DOTA2英雄基础教程 狙击手
2014/01/14 DOTA
[04:01]2014DOTA2国际邀请赛 TITAN告别Ohaiyo期望明年再战
2014/07/15 DOTA
Python中一些自然语言工具的使用的入门教程
2015/04/13 Python
Python实现建立SSH连接的方法
2015/06/03 Python
Python中的变量和作用域详解
2016/07/13 Python
对python中list的拷贝与numpy的array的拷贝详解
2019/01/29 Python
Python3最长回文子串算法示例
2019/03/04 Python
python实现对象列表根据某个属性排序的方法详解
2019/06/11 Python
python如何从文件读取数据及解析
2019/09/19 Python
django的模型类管理器——数据库操作的封装详解
2020/04/01 Python
python使用smtplib模块发送邮件
2020/12/17 Python
canvas因为图片资源不在同一域名下而导致的跨域污染画布的解决办法
2019/01/18 HTML / CSS
美国顶级户外凉鞋品牌:Chacos
2017/03/27 全球购物
康帕斯酒店预订:Compass Hospitality(支持中文)
2018/08/23 全球购物
Currentbody西班牙:美容仪专家
2019/09/28 全球购物
土木工程毕业生自荐信
2013/09/21 职场文书
机械电子工程毕业生自荐信
2013/11/23 职场文书
党支部组织生活会整改方案
2014/09/30 职场文书
集结号观后感
2015/06/08 职场文书
小学校长开学致辞
2015/07/29 职场文书
教你如何使用Python Tkinter库制作记事本
2021/06/10 Python
golang中字符串MD5生成方式总结
2021/07/04 Golang
分析SQL窗口函数之排名窗口函数
2022/04/21 Oracle
Windows server 2012 配置Telnet以及用法详解
2022/04/28 Servers