php 二維數組根據某數組中的某個元素的值排序

 根據ID排序

$sort_val = 1;
$arr = [
    [
        'id'=>1,
        'name'=>'asr'
    ],
    [
        'id'=>5,
        'name'=>'asdaa嘎'
    ],
    [
        'id'=>55,
        'name'=>'stgghh'
    ],
    [
        'id'=>12,
        'name'=>'sghhhhhh'
    ],
    [
        'id'=>24,
        'name'=>'45435'
    ]
];

    if($sort_val == 1){
       $sort = SORT_DESC;
    }elseif($sort_val == -1){
        $sort = SORT_ASC;
    }

    $b = array_column($arr,'id');
    array_multisort($b,$sort,$arr);
echo '<pre>';
var_dump($arr);

打印結果:

array(5) {
  [0]=>
  array(2) {
    ["id"]=>
    int(55)
    ["name"]=>
    string(6) "stgghh"
  }
  [1]=>
  array(2) {
    ["id"]=>
    int(24)
    ["name"]=>
    string(5) "45435"
  }
  [2]=>
  array(2) {
    ["id"]=>
    int(12)
    ["name"]=>
    string(8) "sghhhhhh"
  }
  [3]=>
  array(2) {
    ["id"]=>
    int(5)
    ["name"]=>
    string(8) "asdaa嘎"
  }
  [4]=>
  array(2) {
    ["id"]=>
    int(1)
    ["name"]=>
    string(3) "asr"
  }
}

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章