PHP二维数组中文排序,PHP 对二维数组排序
现在有一个二维数组
$arr = array(
array('date'=>'2011-04-21','wu'=>'test'),
array('date'=>'2014-04-21','wu'=>'good'),
array('date'=>'2011-12-22','wu'=>'great'),
array('date'=>'2012-05-21','wu'=>'hahah'),
array('date'=>'2013-08-13','wu'=>'test'),
array('date'=>'2011-04-25','wu'=>'yes'),
array('date'=>'2014-04-14','wu'=>'no'),
);
我想将它按照里面date日期来重新排序,得到这样的新数组:
$arr2 = array(
array('date'=>'2011-04-21','wu'=>'test'),
array('date'=>'2011-04-25','wu'=>'yes'),
array('date'=>'2011-12-22','wu'=>'great'),
array('date'=>'2012-05-21','wu'=>'hahah'),
array('date'=>'2013-08-13','wu'=>'test'),
array('date'=>'2014-04-14','wu'=>'no'),
array('date'=>'2014-04-21','wu'=>'good'),
);
请问应该怎样做呢?
回复内容:
现在有一个二维数组
$arr = array(
array('date'=>'2011-04-21','wu'=>'test'),
array('date'=>'2014-04-21','wu'=>'good'),
array('date'=>'2011-12-22','wu'=>'great'),
array('date'=>'2012-05-21','wu'=>'hahah'),
array('date'=>'2013-08-13','wu'=>'test'),
array('date'=>'2011-04-25','wu'=>'yes'),
array('date'=>'2014-04-14','wu'=>'no'),
);
我想将它按照里面date日期来重新排序,得到这样的新数组:
$arr2 = array(
array('date'=>'2011-04-21','wu'=>'test'),
array('date'=>'2011-04-25','wu'=>'yes'),
array('date'=>'2011-12-22','wu'=>'great'),
array('date'=>'2012-05-21','wu'=>'hahah'),
array('date'=>'2013-08-13','wu'=>'test'),
array('date'=>'2014-04-14','wu'=>'no'),
array('date'=>'2014-04-21','wu'=>'good'),
);
请问应该怎样做呢?
直接上代码
$tmp = array();
foreach ($arr as $a) {
$tmp[$a['date'] . '_' . $a['wu'] . '_' . rand(1000000, 9999999)] = $a;
}
asort($tmp);
$arr = array_values($tmp);
使用 array_multisort
参考:http://cn2.php.net/array_multisort
php$sort = array(
'direction' => 'SORT_ASC', //排序顺序标志 SORT_DESC 降序;SORT_ASC 升序
'field' => 'date', //排序字段
);
$arrSortTmp = array();
foreach($arr AS $uniqid => $row){
foreach($row AS $key=>$value){
$arrSortTmp[$key][$uniqid] = $value;
}
}
array_multisort($arrSortTmp[$sort["field"]],constant($sort["direction"]), $arr);
var_dump($arr);
$arr = array(
array('date'=>'2011-04-21','wu'=>'test'),
array('date'=>'2014-04-21','wu'=>'good'),
array('date'=>'2011-12-22','wu'=>'great'),
array('date'=>'2012-05-21','wu'=>'hahah'),
array('date'=>'2013-08-13','wu'=>'test'),
array('date'=>'2011-04-25','wu'=>'yes'),
array('date'=>'2014-04-14','wu'=>'no'),
);
array_multisort($arr, SORT_ASC);
print_r($arr);
相关标签:php
本文原创发布php中文网,转载请注明出处,感谢您的尊重!
PHP二维数组中文排序,PHP 对二维数组排序相关推荐
- php 二维数组重组排序,PHP的二维数组排序
我们在开发过程中,经常会遇到给数组排序,熟悉PHP的朋友都知道sort.rsort.ksort.krsort等等这些常用的数组排序函数,但是这些函数都是给一维数组排序的,PHP有没有给二维数组或者多维 ...
- 对二维数组自定义排序、Treemap自定义排序、priorityqueue自定义排序
二维数组自定义排序 Arrays.sort(intervals,new Comparator<int[]>() {@Override public int compare(int[]a,i ...
- 排序---对二维数组的排序
一直想的对二维 数组进行排序 现在 终于完成了 下面附上代码 1 #include<stdio.h> 2 #include<string.h> 3 #include<m ...
- php键值对数组排序,PHP按指定键值对二维数组进行排序的方法_PHP
本文实例讲述了PHP按指定键值对二维数组进行排序的方法.分享给大家供大家参考,具体如下: 问题: 有数组: 代码如下: array(0=>array('id'=>1,'price'=> ...
- Java对二维数组进行排序
今天刷题时需要用到二维数组的排序,奈何一下想不起具体的写法了,那就浅浅复习总结一下吧,加深一下自己的印象. 主要可以分为三种写法: 1.运用Comparator的常规写法,例如: int[][] in ...
- php 二维数组 随机排序_php二维数组排序—默认自然排序
什么是二维数组?二维数组本质上是以数组作为数组元素的数组,即"数组的数组",类型说明符 数组名[常量表达式][常量表达式].二维数组又称为矩阵,行列数相等的矩阵称变方阵.对称矩阵a ...
- php对二维数组进行排序 php数据排序 php排序
php对一维数组排序自带函数就有很多 PHP - 数组的排序函数 sort() - 以升序对数组排序 rsort() - 以降序对数组排序 asort() - 根据值,以升序对关联数组进行排序 kso ...
- python二维数组自定义排序
二维数组排序 python二维数组自定义排序 基础二维数组排序 二维数组自定义排序 python二维数组自定义排序 基础二维数组排序 y = sorted(x, key = lambda x:(x[0 ...
- c++ sort()函数对二维数组vector排序
c++ sort()函数对二维数组vector排序 sort (first, last) 对容器或普通数组中 [first, last) 范围内的元素进行排序,默认进行升序排序. 对于一个一维的数组, ...
最新文章
- XML和JSON 数据交换格式
- 基于Mybatis,处理多表联合获取
- ML之ME/LF:基于不同机器学习框架(sklearn/TF)下算法的模型评估指标(损失函数)代码实现及其函数(Scoring/metrics)代码实现(仅代码)
- ml回归_ML中的分类和回归是什么?
- type-c接口图片_TypeC接口除了充电还能干吗?这些功能都不知道,简直是在浪费...
- 前端学习(2485):vue里面的this指向
- linux var 空间不足,/var空间不足怎么办?(求安全保险的方法)
- 计算机网络课程设计之电子邮件客户端程序设计与实现
- 租赁笔记本电脑哪里有_广东哪里有离心鼓风机优势-长沙鼓风机厂
- cpython vm_【协程原理】 - cPython的VM真变态
- 周子学辞任中芯国际董事长
- js数组的sort排序(获取中位数)
- 关于简历的一点心得(纯属个人想法,非专业人士,欢迎批评指正~)
- mysql字符集导出_关于mysql字符集及导入导出
- NEFU 117-素数个数的位数(素数定理)
- 【OpenCV 例程 300 篇】101. 自适应中值滤波器
- JAVA实现负载均衡
- 为什么很多炫酷的产品并没能流行起来?
- 开源掌机芯片方案对比
- 传统 以太网 时隙(slot time) 理解