国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 語言 > PHP > 正文

PHP數組遞歸排序實現方法示例

2024-05-05 00:02:49
字體:
來源:轉載
供稿:網友

本文實例講述了PHP數組遞歸排序實現方法。分享給大家供大家參考,具體如下:

/** * 遞歸根據特定key對數組排序 * @param $data * @param string $orderKey * @param string $sonKey * @param int $orderBy * @return mixed */function recursion_orderby($data, $orderKey = 'order', $sonKey = 'children', $orderBy = SORT_ASC){  $func = function ($value) use ($sonKey, $orderKey, $orderBy) {    if (isset($value[$sonKey]) && is_array($value[$sonKey])) {      $value[$sonKey] = recursion_orderby($value[$sonKey], $orderKey, $sonKey, $orderBy);    }    return $value;  };  return array_orderby(array_map($func, $data), $orderKey, $orderBy);}$a = [  [    'order' => 0,  ],  [    'order' => -1,    'children' => [      [        'order' => 0,      ],      [        'order' => -2,        'children' => [          ['order' => 0],          ['order' => -1],          ['order' => 1],        ],      ],    ],  ],  [    'order' => 2,  ],];var_dump(recursion_orderby($a));/** * 輸出:array(3) { [0] => array(2) {  'order' =>  int(-1)  'children' =>  array(2) {   [0] =>   array(2) {    'order' =>    int(-2)    'children' =>    array(3) {     [0] =>     array(1) {      'order' =>      int(-1)     }     [1] =>     array(1) {      'order' =>      int(0)     }     [2] =>     array(1) {      'order' =>      int(1)     }    }   }   [1] =>   array(1) {    'order' =>    int(0)   }  } } [1] => array(1) {  'order' =>  int(0) } [2] => array(1) {  'order' =>  int(2) }}*/

注:這里的array_orderby方法在前面一篇《php自定義二維數組排序函數array_orderby用法》中有詳細介紹

希望本文所述對大家PHP程序設計有所幫助。


注:相關教程知識閱讀請移步到PHP教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 临江市| 福安市| 涿鹿县| 九江市| 牙克石市| 原平市| 葵青区| 铁岭市| 肇源县| 嫩江县| 土默特左旗| 秭归县| 武义县| 长泰县| 息烽县| 花莲市| 交口县| 榆中县| 邵东县| 崇仁县| 扎鲁特旗| 从江县| 天峻县| 东安县| 连云港市| 葫芦岛市| 墨脱县| 吉林省| 正宁县| 西华县| 云南省| 于田县| 哈巴河县| 武隆县| 麻栗坡县| 陆良县| 登封市| 吉木乃县| 筠连县| 逊克县| 郴州市|