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 相关文章推荐
PHP4实际应用经验篇(8)
Oct 09 PHP
php.ini 中文版
Oct 28 PHP
调整优化您的LAMP应用程序的5种简单方法
Jun 26 PHP
php顺序查找和二分查找示例
Mar 27 PHP
对PHP语言认识上需要避免的10大误区
Jun 12 PHP
PHP中绘制图像的一些函数总结
Nov 19 PHP
PHP中$_SERVER使用说明
Jul 05 PHP
PHP MySql增删改查的简单实例
Jun 21 PHP
PHP session会话操作技巧小结
Sep 27 PHP
PHP ajax+jQuery 实现批量删除功能实例代码小结
Dec 06 PHP
PHP面向对象程序设计之接口的继承定义与用法详解
Dec 20 PHP
PHP命名空间用法实例分析
Sep 04 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
destoon实现调用当前栏目分类及子分类和三级分类的方法
2014/08/21 PHP
php实时倒计时功能实现方法详解
2017/02/27 PHP
PHP 数组黑名单/白名单实例代码详解
2019/06/04 PHP
根据判断浏览器类型屏幕分辨率自动调用不同CSS的代码
2007/02/22 Javascript
JQuery 选项卡效果(JS与HTML的分离)
2010/04/01 Javascript
JavaScript高级程序设计 客户端存储学习笔记
2011/09/10 Javascript
原生JavaScript编写俄罗斯方块
2015/03/30 Javascript
如何用js 实现依赖注入的思想,后端框架思想搬到前端来
2015/08/03 Javascript
node.js微信公众平台开发教程
2016/03/04 Javascript
Laydate时间组件在火狐浏览器下有多时间输入框时只能给第一个输入框赋值的解决方法
2016/08/18 Javascript
使用bootstrap插件实现模态框效果
2017/05/10 Javascript
详细介绍RxJS在Angular中的应用
2017/09/23 Javascript
微信小程序录音与播放录音功能
2017/12/25 Javascript
Vue.js结合bootstrap前端实现分页和排序效果
2018/12/29 Javascript
[52:57]2014 DOTA2国际邀请赛中国区预选赛 LGD-CDEC VS HGT
2014/05/21 DOTA
浅析python 内置字符串处理函数的使用方法
2014/06/11 Python
python打开url并按指定块读取网页内容的方法
2015/04/29 Python
Python变量赋值的秘密分享
2018/04/03 Python
Windows下python3.6.4安装教程
2018/07/31 Python
python判断一个数是否能被另一个整数整除的实例
2018/12/12 Python
Python 多线程,threading模块,创建子线程的两种方式示例
2019/09/29 Python
Python+OpenCV 实现图片无损旋转90°且无黑边
2019/12/12 Python
Python脚本去除文件的只读性操作
2020/03/05 Python
CSS3教程(5):网页背景图片
2009/04/02 HTML / CSS
CSS3实现酷炫的3D旋转透视效果
2019/11/21 HTML / CSS
华润集团网上药店:健一网
2016/09/19 全球购物
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
Myholidays美国:在线旅游网站
2019/08/16 全球购物
台湾良兴购物网:EcLife
2019/12/01 全球购物
元旦联欢会主持词
2014/03/26 职场文书
食品安全汇报材料
2014/08/18 职场文书
大一工商管理职业生涯规划:有梦最美,行动相随
2014/09/18 职场文书
工作迟到检讨书范文
2015/05/06 职场文书
领导干部学习十八届五中全会精神心得体会
2016/01/05 职场文书
JavaScript实现班级抽签小程序
2021/05/19 Javascript
mysql如何查询连续记录
2022/05/11 MySQL