欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

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

程序员文章站 2022-05-31 09:13:44
php二维数组排序函数,默认自然排序,即sort排序。这里可以指定按二维数组中的某个值进行多种方法排序,具体看下面的程序注释。复制代码 代码如下:/**  &...

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; 

 }