php array_multisort函数实现按某一字段对二维数组进行排序
在工作中碰到一个页面如表格似的展示多条数据,要求根据其中的修改时间对数据进行排序,
数据格式类似于
$a = array(
0=>array(
editTime=>''
addTime=>''
)
1=>array(
editTime=>''
addTime=>''
)
)
如果要让自己写的话,估计得新建一个数组,然后通过对修改时间进行冒泡排序,完成数组排序
而PHP 提供的array_multisort这个函数很强大,他可以同时输入多个数组,对第一个数组的排序操作,将会作用于后续数组,由此我们可以先取出修改时间
作为一个数组,对其进行值降序(或升序)排序,然后就可以影响原来的数组以完成排序目的。
示例:
$a = array(
0=>array(
editTime=>17
addTime=>15
)
1=>array(
editTime=>19
addTime=>16
)
)
取出修改时间的值
$editTime = array(17,19);
array_multisort($editTime, SORT_DESC , SORT_NUMERIC, $a);
结果
editTime = array(19, 17);
$a = array(
0=>array(
editTime=>19
addTime=>18
)
1=>array(
editTime=>17
addTime=>15
)
)
一些关于这个函数的具体描述可以在这里找到http://www.php.net/manual/zh/function.array-multisort.php
php array_multisort函数实现按某一字段对二维数组进行排序的更多相关文章
- C语言中将二维数组作为函数参数来传递
c语言中经常需要通过函数传递二维数组,有三种方法可以实现,如下: 方法一, 形参给出第二维的长度. 例如: #include <stdio.h> void func(int n, char ...
- 一个有用的排序函数,array_multisort(),下面的一个用法是根据二维数组里的一个字段值的大小,对该二维数组进行重新排序
从二维数组$cashes中取出一列 'store_id'(二维数组中的每个一维数组都有的字段),按照这个的大小排序,对二维数组$caches里面的一维数组进行重新排序 实际应用如下 想让相同部门的排在 ...
- array_multisort函数,以及多维数组下排序的应用,并与usort函数对比
以前比较少用这个函数,大部分自己接触的业务里,处理稍微大一些的数组的时候几乎都是从db里取出来的,在db里就order by了. 最近倒是用了次,这个函数用来排序很强大,有点类似于sql中的order ...
- 二维数组针对某字段排序 - array_multisort()
/** * 针对二维数组下的某字段排序 * @param array $myarr 被排序数组 * @param string $sort_key 排序根据字段 * @param flag $sort ...
- PHP 二维数组根据某个字段排序 复制代码 array_multisort
//二维数组,按照里面的age从大到小降序,代码如下 <?php header('Content-Type:text/html;Charset=utf-8'); $arrUsers = arra ...
- PHP数组函数 array_multisort() ----对多个数组或多维数组进行排序
PHP中array_multisort可以用来一次对多个数组进行排序,或者根据某一维或多维对多维数组进行排序. 关联(string)键名保持不变,但数字键名会被重新索引. 输入数组被当成一个表的列并以 ...
- PHP 二维数组根据某个字段排序
二维数组根据某个字段排序有两种办法,一种是通过sort自己写代码,一种是直接用array_multisort排序函数 一. 手写arraysort PHP的一维数组排序函数: sort 对数组的值按 ...
- PHP 二维数组根据某个字段按指定排序方式排序
/** * 二维数组根据某个字段按指定排序方式排序 * @param $arr array 二维数组 * @param $field string 指定字段 * @param int $sort_or ...
- PHP二维数组,根据多个字段来排序
如果是最最常见的二维数组排序, 大多数情况下也只用到二维: 用php内置函数 array_multisort( ) 是最简单的: <?php 假设, $arr 是一个二维数组, $arg1是取 ...
随机推荐
- Python中的threadlocal
在多线程中,对于共有的共享数据的操作,需要加锁. 但是,对于局部变量,则在每个线程之间相互独立. 假如线程T想要把函数F1中的局部变量V1传到函数F2中去,F2再想把这个变量传到F3中去,一层一层地传 ...
- 记录python接口自动化测试--利用unittest生成测试报告(第四目)
前面介绍了是用unittest管理测试用例,这次看看如何生成html格式的测试报告 生成html格式的测试报告需要用到 HTMLTestRunner,在网上下载了一个HTMLTestRunner.py ...
- 学号:201621123032 《Java程序设计》第13周学习总结
1:本周学习总结 2:为你的系统增加网络功能(购物车.图书馆管理.斗地主等)-分组完成 2.1:简述你想为你的系统增加什么网络功能?设计思路是什么? 创建了一个服务器监听8080端口,通过网络助手客户 ...
- C语言--第14.15周作业
一. 7-3 将数组中的数逆序存放 1.代码 #include 2<stdio.h> int main() { int a[10]; int i, n, s; scanf("%d ...
- 201621123068 Week04-面向对象设计与继承
1. 本周学习总结 1.1 写出你认为本周学习中比较重要的知识点关键词 答:继承.多态.重载.关键字.父类与子类 1.2 尝试使用思维导图将这些关键词组织起来. 2. 书面作业 1. 面向对象设计(大 ...
- DELL EqualLogic PS存储硬盘故障数据恢复成功案例分享
DELL EqualLogic PS4000采用虚拟ISCSI SAN阵列,为远程或分支办公室.部门和中小企业存储部署带来企业级功能.智能化.自动化和可靠性.以简化的管理.快速的部署及合理的价格满足了 ...
- JS页面跳转的常用方法整理.
<script type="text/javascript"> //js页面跳转 function showtabs() { window.location.href ...
- 码农、黑客和2B程序员之间的区别
码农: 黑客: 2B程序员: 求2的32次方: 码农: System.out.println(Math.pow(2, 32)); 黑客: System.out.println(1L<<32 ...
- Python之旅.第三章.函数3.27
一.形参与实参 1.形参与实参是什么? 形参(形式参数):指的是 在定义函数时,括号内定义的参数,形参其实就变量名 实参(实际参数),指的是 在调用函数时,括号内传入的值,实参其实就变量的值 x,y是 ...
- php的函数参数按照从左到右来赋值
PHP 中自定义函数参数赋默认值 2012-07-07 13:23:00| 分类: php自定义函数,默|举报|字号 订阅 下载LOFTER我的照片书 | php自定义函数接受参数 ...