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 相关文章推荐
利用PHP实现与ASP Banner组件相似的类
Oct 09 PHP
php中文本操作的类
Mar 17 PHP
php下实现伪 url 的超简单方法[转]
Sep 24 PHP
php设计模式  Command(命令模式)
Jun 17 PHP
thinkphp配置连接数据库技巧
Dec 02 PHP
php+html5使用FormData对象提交表单及上传图片的方法
Feb 11 PHP
php使用mysqli向数据库添加数据的方法
Mar 20 PHP
php中执行系统命令的方法
Mar 21 PHP
PHP传参之传值与传址的区别
Apr 24 PHP
浅谈laravel aliases别名的原理
Oct 24 PHP
PHP实现提取多维数组指定一列的方法总结
Dec 04 PHP
PHP中国际化的字符串排序和比较对象详解
Aug 23 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修正代码
2011/05/09 PHP
在Thinkphp中使用ajax实现无刷新分页的方法
2016/10/25 PHP
PHP实现登陆并抓取微信列表中最新一组微信消息的方法
2017/07/10 PHP
jQuery 相关控件的事件操作分解
2009/08/03 Javascript
prototype 中文参数乱码解决方案
2009/11/09 Javascript
createTextRange()的使用示例含文本框选中部分文字内容
2014/02/24 Javascript
jquery和css3实现的炫酷时尚的菜单导航
2014/09/01 Javascript
深入探寻javascript定时器
2015/01/02 Javascript
jQuery中andSelf()方法用法实例
2015/01/08 Javascript
js小数运算出现多位小数如何解决
2015/10/08 Javascript
详解Bootstrap的aria-label和aria-labelledby应用
2016/01/04 Javascript
JS获取CSS样式(style/getComputedStyle/currentStyle)
2016/01/19 Javascript
Bootstrap零基础学习第一课之模板
2016/07/18 Javascript
jQuery实现发送验证码并60秒倒计时功能
2016/11/25 Javascript
详解JS获取HTML DOM元素的8种方法
2017/06/17 Javascript
深入讲解xhr(XMLHttpRequest)/jsonp请求之abort
2017/07/26 Javascript
Vue.js实现网格列表布局转换方法
2017/08/25 Javascript
vue router 源码概览案例分析
2018/10/09 Javascript
微信 jssdk 签名错误invalid signature的解决方法
2019/01/14 Javascript
微信小程序如何访问公众号文章
2019/07/08 Javascript
解决vue-cli webpack打包开启Gzip 报错问题
2019/07/24 Javascript
vue+vant使用图片预览功能ImagePreview的问题解决
2020/04/10 Javascript
JavaScript接口实现方法实例分析
2020/05/16 Javascript
antd table按表格里的日期去排序操作
2020/11/17 Javascript
vue3+typeScript穿梭框的实现示例
2020/12/29 Vue.js
python opencv实现切变换 不裁减图片
2018/07/26 Python
Canvas制作的下雨动画的示例
2018/03/06 HTML / CSS
美国折扣地毯销售网站:Rugs.com
2020/03/27 全球购物
在C语言中"指针和数组等价"到底是什么意思?
2014/03/24 面试题
新闻专业大学生找工作的自我评价
2013/10/30 职场文书
学校安全检查制度
2014/01/27 职场文书
安全生产责任书范本
2014/04/15 职场文书
市场营销专业求职信
2014/06/17 职场文书
电子专业求职信
2014/06/19 职场文书
2015年大学生实习评语
2015/03/25 职场文书
Nginx Rewrite使用场景及配置方法解析
2021/04/01 Servers