首頁 >後端開發 >php教程 >php二維數組排序—預設自然排序

php二維數組排序—預設自然排序

小云云
小云云原創
2017-11-15 15:46:131729瀏覽

什麼是二維數組?二維數組本質上是以數組作為數組元素的數組,即"數組的數組",類型說明符 數組名[常數表達式][常數表達式]。二維數組又稱為矩陣,行列數相等的矩陣稱變方陣。對稱矩陣a[i][j] = a[j][i],對角矩陣:n階方陣主對角線外都是零元素。 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[]=&#39;$&#39;.$Arg;
        }else{
            $SortRule[]=$Arg;
        }
    }
    foreach($array AS $Key=>$Info){
        foreach($KeyNameList as $KeyName){
            ${$KeyName}[$Key]=$Info[$KeyName];
        }
    }
    $EvalString=&#39;array_multisort(&#39;.join(",",$SortRule).&#39;,$array);&#39;;
    eval($EvalString);
    return $array;
}

以上就是關於PHP二維數組排序之預設自然排序的教程,希望對大家有幫助。

相關推薦:

php二維陣列賦值與遍歷功能的實作範例

什麼是php二維陣列?php二維數組實例詳解

一個PHP二維數組排序的函數分享

以上是php二維數組排序—預設自然排序的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn