ホームページ  >  記事  >  バックエンド開発  >  PHP 2 次元配列ソート - デフォルトの自然ソート

PHP 2 次元配列ソート - デフォルトの自然ソート

小云云
小云云オリジナル
2017-11-15 15:46:131682ブラウズ

什么是二维数组?二维数组本质上是以数组作为数组元素的数组,即"数组的数组",类型说明符 数组名[常量表达式][常量表达式]。二维数组又称为矩阵,行列数相等的矩阵称变方阵。对称矩阵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 2 次元配列ソート - デフォルトの自然ソートの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。