php实例分享之二维数组排序


Posted in PHP onMay 15, 2014

PHP一维数组的排序可以用sort(),asort(),arsort()等函数;

PHP二维数组的排序需要自定义。

以下函数是对一个给定的二维数组按照指定的键值进行排序,先看函数定义:

function array_sort($arr,$keys,$type='asc'){ 
 $keysvalue = $new_array = array();
 foreach ($arr as $k=>$v){
  $keysvalue[$k] = $v[$keys];
 }
 if($type == 'asc'){
  asort($keysvalue);
 }else{
  arsort($keysvalue);
 }
 reset($keysvalue);
 $index = 0;//保存下标不变用$k,下标从0开始就用$index;
 foreach ($keysvalue as $k=>$v){
  
  $new_array[$index] = $arr[$k];
  $index++;
 }
 return $new_array; 
}

它可以对二维数组按照指定的键值进行排序,也可以指定升序或降序排序法(默认为升序),用法示例:

$array = array(
 array('name'=>'Js','date'=>'2014-05-01'),
 array('name'=>'Sh','date'=>'2014-04-30'),
 array('name'=>'Bj','date'=>'2014-05-02')
);
$arrayList = array_sort($array,'date');
print_r($arrayList);
PHP 相关文章推荐
PHP类中Static方法效率测试代码
Oct 17 PHP
php下封装较好的数字分页方法
Nov 23 PHP
php引用地址改变变量值的问题
Mar 23 PHP
完美利用Yii2微信后台开发的系列总结
Jul 18 PHP
php 遍历目录,生成目录下每个文件的md5值并写入到结果文件中
Dec 12 PHP
PHP中使用OpenSSL生成证书及加密解密
Feb 05 PHP
php图形jpgraph操作实例分析
Feb 22 PHP
php base64 编码与解码实例代码
Mar 21 PHP
PHP中使用CURL发送get/post请求上传图片批处理功能
Oct 15 PHP
解决thinkPHP 5 nginx 部署时,只跳转首页的问题
Oct 16 PHP
PHP开发api接口安全验证操作实例详解
Mar 26 PHP
TP5框架使用QueryList采集框架爬小说操作示例
Mar 26 PHP
php表单请求获得数据求和示例
May 15 #PHP
ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单
May 15 #PHP
ThinkPHP使用心得分享-上传类UploadFile的使用
May 15 #PHP
ThinkPHP使用心得分享-分页类Page的用法
May 15 #PHP
php自定义函数截取汉字长度
May 15 #PHP
php获取服务器端mac和客户端mac的地址支持WIN/LINUX
May 15 #PHP
php小技巧之过滤ascii控制字符
May 14 #PHP
You might like
PHP在引号前面添加反斜杠(PHP去除反斜杠)
2013/09/28 PHP
zf框架的db类select查询器join链表使用示例(zend框架)
2014/03/14 PHP
Laravel 5 框架入门(二)构建 Pages 的管理功能
2015/04/09 PHP
thinkphp5框架实现的自定义扩展类操作示例
2019/05/16 PHP
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
jquery load()在firefox(火狐)下显示不正常的解决方法
2011/04/05 Javascript
JS实现简单的Canvas画图实例
2013/07/04 Javascript
JS限制Textarea文本域字符个数的具体实现
2013/08/02 Javascript
PHP abstract与interface之间的区别
2013/11/11 Javascript
form.submit()不能提交表单的原因分析
2014/10/23 Javascript
node.js中的console.info方法使用说明
2014/12/09 Javascript
jquery实现未经美化的简洁TAB菜单效果
2015/08/28 Javascript
基于jQuery实现的双11天猫拆红包抽奖效果
2015/12/01 Javascript
实用又漂亮的BootstrapValidator表单验证插件
2016/05/30 Javascript
Bootstrap模态框(modal)垂直居中的实例代码
2016/08/18 Javascript
jquery日历插件e-calendar升级版
2016/11/10 Javascript
详解vue 模拟后台数据(加载本地json文件)调试
2017/08/25 Javascript
基于打包工具Webpack进行项目开发实例
2018/05/29 Javascript
video.js 一个页面同时播放多个视频的实例代码
2018/11/27 Javascript
详解VUE里子组件如何获取父组件动态变化的值
2018/12/26 Javascript
微信小程序实现九宫格抽奖
2020/04/15 Javascript
解决vue动态路由异步加载import组件,加载不到module的问题
2020/07/26 Javascript
Python实现把数字转换成中文
2015/06/29 Python
Django实现简单分页功能的方法详解
2017/12/05 Python
Python3自动签到 定时任务 判断节假日的实例
2018/11/13 Python
django admin后台添加导出excel功能示例代码
2019/05/15 Python
在 Jupyter 中重新导入特定的 Python 文件(场景分析)
2019/10/27 Python
python中pop()函数的语法与实例
2020/12/01 Python
this关键字的含义
2015/04/08 面试题
毕业生机械建模求职信
2013/10/14 职场文书
经理职责范文
2013/11/08 职场文书
慰问敬老院活动总结
2014/04/26 职场文书
代办出身证明书
2014/10/21 职场文书
2015年教务主任工作总结
2015/07/22 职场文书
Python中X[:,0]和X[:,1]的用法
2021/05/10 Python
pytorch中的torch.nn.Conv2d()函数图文详解
2022/02/28 Python