php二维数组排序与默认自然排序的方法介绍


Posted in PHP onApril 27, 2013

php二维数组排序函数,默认自然排序,即sort排序。这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释。

/**  
  * @function 二维数组自然排序  
  * @author www.phpernote.com  
  * @param array $array 需要排序的数组(二维)  
  * @param string key 需要根据哪个键排序  
  * @param string order 排序方式(SORT_ASC,SORT_DESC)  
  * @param string type 排序方法(SORT_REGULAR,SORT_NUMERIC,SORT_STRING)  
  * @return array sorted array.  
  */ 
 function phpSortArray($array,$key,$order="SORT_ASC",$type="SORT_REGULAR"){  
     if(!is_array($array)||empty($$array)){  
         return $array;  
     }  
     $ArgCount=func_num_args();//返回传递到目前定义函数的参数数目  
     for($I=1;$I<$ArgCount;$I++){  
         $Arg=func_get_arg($I);  
         if(!eregi("SORT",$Arg)){  
             $KeyNameList[]=$Arg;  
             $SortRule[]='$'.$Arg;  
         }else{  
             $SortRule[]=$Arg;  
         }  
     }  
     foreach($array AS $Key=>$Info){  
         foreach($KeyNameList as $KeyName){  
             ${$KeyName}[$Key]=$Info[$KeyName];  
         }  
     }  
     $EvalString='array_multisort('.join(",",$SortRule).',$array);';  
     eval($EvalString);  
     return $array;  
 }

PHP 相关文章推荐
dedecms系统的广告设置代码 基础版本
Apr 09 PHP
比较好用的PHP防注入漏洞过滤函数代码
Apr 11 PHP
php过滤所有的空白字符(空格、全角空格、换行等)
Oct 27 PHP
通过PHP简单实例介绍文件上传
Dec 16 PHP
PHP调用存储过程返回值不一致问题的解决方法分析
Apr 26 PHP
PHP查看SSL证书信息的方法
Sep 22 PHP
PHP实现获取ip地址的5种方法,以及插入用户登录日志操作示例
Feb 28 PHP
Laravel5框架自定义错误页面配置操作示例
Apr 17 PHP
PHP使用ActiveMQ实现消息队列的方法详解
May 31 PHP
在Laravel中使用MongoDB的方法示例
Nov 11 PHP
PHP读取Excel内的图片(phpspreadsheet和PHPExcel扩展库)
Nov 19 PHP
Laravel配合jwt使用的方法实例
Oct 25 PHP
使用Apache的htaccess防止图片被盗链的解决方法
Apr 27 #PHP
php 模拟get_headers函数的代码示例
Apr 27 #PHP
php获取本地图片文件并生成xml文件输出具体思路
Apr 27 #PHP
php笔记之:php函数range() round()和list()的使用说明
Apr 26 #PHP
php笔记之:php数组相关函数的使用
Apr 26 #PHP
php笔记之:有规律大文件的读取与写入的分析
Apr 26 #PHP
php笔记之:文章中图片处理的使用
Apr 26 #PHP
You might like
PHP获取一年有几周以及每周开始日期和结束日期
2015/08/06 PHP
PHP将二维数组某一个字段相同的数组合并起来的方法
2016/02/26 PHP
JS自调用匿名函数具体实现
2014/02/11 Javascript
js类定义函数时用prototype与不用的区别示例介绍
2014/06/10 Javascript
jQuery实现下拉加载功能实例代码
2016/04/01 Javascript
Jquery ajax请求导出Excel表格的实现代码
2016/06/08 Javascript
基于js实现checkbox批量选中操作
2016/11/22 Javascript
AngularJS使用ng-class动态增减class样式的方法示例
2017/05/18 Javascript
微信小程序之滚动视图容器的实现方法
2017/09/26 Javascript
vue实现图书管理demo详解
2017/10/17 Javascript
layer弹出层全屏及关闭方法
2018/08/17 Javascript
vue实现微信分享链接添加动态参数的方法
2019/04/29 Javascript
微信小程序的mpvue框架快速上手指南
2019/05/15 Javascript
vue 全局环境切换问题
2019/10/27 Javascript
微信分享invalid signature签名错误踩过的坑
2020/04/11 Javascript
python实现监控windows服务并自动启动服务示例
2014/04/17 Python
Python中pip安装非PyPI官网第三方库的方法
2015/06/02 Python
Python+request+unittest实现接口测试框架集成实例
2018/03/16 Python
Python中的二维数组实例(list与numpy.array)
2018/04/13 Python
Python对多属性的重复数据去重实例
2018/04/18 Python
python 下 CMake 安装配置 OPENCV 4.1.1的方法
2019/09/30 Python
python爬虫实现POST request payload形式的请求
2020/04/30 Python
HTML5移动端开发中的Viewport标签及相关CSS用法解析
2016/04/15 HTML / CSS
设计部经理的岗位职责
2013/11/16 职场文书
建材业务员岗位职责
2013/12/08 职场文书
职员竞岗演讲稿
2014/05/14 职场文书
委托公证书样本
2015/01/23 职场文书
罚站检讨书
2015/01/29 职场文书
行政司机岗位职责
2015/04/10 职场文书
村党组织公开承诺书
2015/04/30 职场文书
新党员入党决心书
2015/09/22 职场文书
2016党员读书思廉心得体会
2016/01/23 职场文书
2019年销售部季度工作计划3篇
2019/10/09 职场文书
CSS 新特性 contain控制页面的重绘与重排问题
2021/04/30 HTML / CSS
CSS 伪元素::marker详解
2021/06/26 HTML / CSS
Spring实现内置监听器
2021/07/09 Java/Android