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实现小型站点广告管理(修正版)
Oct 09 PHP
PHP中使用gettext来支持多语言的方法
May 02 PHP
php unset全局变量运用问题的深入解析
Jun 17 PHP
php过滤XSS攻击的函数
Nov 12 PHP
PHP上传图片进行等比缩放可增加水印功能
Jan 13 PHP
ThinkPHP空模块和空操作详解
Jun 30 PHP
Codeigniter框架实现获取分页数据和总条数的方法
Dec 05 PHP
discuz目录文件资料汇总
Dec 30 PHP
PHP获取一段文本显示点阵宽度和高度的方法
Mar 12 PHP
php基于Snoopy解析网页html的方法
Jul 09 PHP
PHP实现仿Google分页效果的分页函数
Jul 29 PHP
老生常谈PHP中的数据结构:DS扩展
Jul 17 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
磨咖啡豆的密诀
2021/03/03 冲泡冲煮
php学习 函数 课件
2008/06/15 PHP
PHP静态调用非静态方法的应用分析
2013/05/02 PHP
php利用腾讯ip分享计划获取地理位置示例分享
2014/01/20 PHP
PHP图片库imagemagick安装方法
2014/09/23 PHP
PHP addslashes()函数讲解
2019/02/03 PHP
Yii 框架使用数据库(databases)的方法示例
2020/05/19 PHP
js原生态函数中使用jQuery中的 $(this)无效的解决方法
2011/05/25 Javascript
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
JS+CSS设置img在DIV中只显示Img垂直居中的部分
2013/10/24 Javascript
用JavaScript实现对话框的教程
2015/06/04 Javascript
JS处理json日期格式化问题
2015/10/01 Javascript
JavaScript“尽快失败”的原则实例详解
2016/10/08 Javascript
js 能实现监听F5页面刷新子iframe 而父页面不刷新的方法
2016/11/09 Javascript
JS实现复选框的全选和批量删除功能
2017/04/05 Javascript
深究AngularJS中ng-drag、ng-drop的用法
2017/06/12 Javascript
原生JS实现自定义滚动条效果
2020/10/27 Javascript
ECMAScript6变量的解构赋值实例详解
2017/09/19 Javascript
Vuex 模块化使用详解
2019/07/31 Javascript
tweenjs缓动算法的使用实例分析
2019/08/26 Javascript
JS秒杀倒计时功能完整实例【使用jQuery3.1.1】
2019/09/03 jQuery
从零搭一个自用的前端脚手架的方法步骤
2019/09/23 Javascript
解决layui table表单提示数据接口请求异常的问题
2019/09/24 Javascript
webpack4 optimization使用总结
2019/11/10 Javascript
Angular封装表单控件及思想总结
2019/12/11 Javascript
Python处理文本换行符实例代码
2018/02/03 Python
python清除函数占用的内存方法
2018/06/25 Python
python画环形图的方法
2020/03/25 Python
Python-jenkins模块获取jobs的执行状态操作
2020/05/12 Python
vscode+PyQt5安装详解步骤
2020/08/12 Python
Selenium结合BeautifulSoup4编写简单的python爬虫
2020/11/06 Python
python opencv实现直线检测并测出倾斜角度(附源码+注释)
2020/12/31 Python
Python 调用C++封装的进一步探索交流
2021/03/04 Python
安全资金保障制度
2014/01/23 职场文书
报纸媒体创意广告词
2014/03/17 职场文书
毕业班班主任工作总结2015
2015/07/23 职场文书