>php教程 >php手册 >php二维数组排序与默认自然排序的方法介绍

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

WBOY
WBOY원래의
2016-06-13 11:53:071005검색

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

         $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; 

 }


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.