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 相关文章推荐
example1.php
Oct 09 PHP
php at(@)符号的用法简介
Jul 11 PHP
表格展示无限级分类(PHP版)
Aug 21 PHP
php使用递归计算文件夹大小
Dec 24 PHP
PHP版本如何选择?应该使用哪个版本?
May 13 PHP
PHP中CheckBox多选框上传失败的代码写法
Feb 13 PHP
PHP读取Excel类文件
May 15 PHP
PHP+原生态ajax实现的省市联动功能详解
Aug 15 PHP
php+ajax实现无刷新文件上传功能(ajaxuploadfile)
Feb 11 PHP
PHP操作MongoDB实现增删改查功能【附php7操作MongoDB方法】
Apr 24 PHP
PHP扩展Swoole实现实时异步任务队列示例
Apr 13 PHP
TP5(thinkPHP5框架)基于bootstrap实现的单图上传插件用法示例
May 29 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
星际争霸中的热键
2020/03/04 星际争霸
php+ajax做仿百度搜索下拉自动提示框(有实例)
2012/08/21 PHP
PHP加密解密实例分析
2015/12/25 PHP
PHP中__set()实例用法和基础讲解
2019/07/23 PHP
Js动态创建div
2008/09/25 Javascript
JQuery将文本转化成JSON对象需要注意的问题
2011/05/09 Javascript
Ext JS 4实现带week(星期)的日期选择控件(实战二)
2013/08/21 Javascript
js实现身份证号码验证的简单实例
2014/02/19 Javascript
详解JavaScript RegExp对象
2017/02/04 Javascript
jQuery Pagination分页插件使用方法详解
2017/02/28 Javascript
JavaScript使用readAsDataURL读取图像文件
2017/05/10 Javascript
JS奇技之利用scroll来监听resize详解
2017/06/15 Javascript
javaScript手机号码校验工具类PhoneUtils详解
2017/12/08 Javascript
jQuery实现模糊查询的方法分析
2018/05/10 jQuery
如何测量vue应用运行时的性能
2019/06/21 Javascript
微信小程序 搜索框组件代码实例
2019/09/06 Javascript
Openlayers显示地理位置坐标的方法
2020/09/28 Javascript
Django自定义分页效果
2017/06/27 Python
PyQt5实现无边框窗口的标题拖动和窗口缩放
2018/04/19 Python
Django重装mysql后启动报错:No module named ‘MySQLdb’的解决方法
2018/04/22 Python
分享一下Python数据分析常用的8款工具
2018/04/29 Python
PyTorch 1.0 正式版已经发布了
2018/12/13 Python
Python实现微信消息防撤回功能的实例代码
2019/04/29 Python
python从入门到精通 windows安装python图文教程
2019/05/18 Python
python GUI库图形界面开发之PyQt5工具栏控件QToolBar的详细使用方法与实例
2020/02/28 Python
Python嵌入C/C++进行开发详解
2020/06/09 Python
python怎么删除缓存文件
2020/07/19 Python
Anaconda的安装与虚拟环境建立
2020/11/18 Python
HTML5的语法变化介绍
2013/08/13 HTML / CSS
网络维护管理员的自我评价分享
2013/11/11 职场文书
土木工程个人自荐信范文
2013/11/30 职场文书
缴纳养老保险的证明
2014/01/10 职场文书
领导视察欢迎词
2014/01/15 职场文书
实习护士自荐信
2015/03/25 职场文书
唐山大地震的观后感
2015/06/05 职场文书
JavaScript组合继承详解
2021/11/07 Javascript