1. 程式人生 > >利用array_multisort()給二維陣列排序

利用array_multisort()給二維陣列排序

先看例子:

$a=array(8,5,6,1,5,2);
$b=array('b','s','d','z','g','r');
array_multisort($a,$b);
var_dump($a);
var_dump($b);

執行結果:
這裡寫圖片描述
顯然陣列b是按照了陣列a的排列順序排序的,不過前提是兩個陣列的元素個數必須相同。
根據這一點,可以利用array_multisort()來排序二維陣列:

$a=array(
    array('key'=>'dfga','value'=>52),
    array('key'=>'sag','value'=>42
), array('key'=>'garc','value'=>92), array('key'=>'xfsa','value'=>82), array('key'=>'afg','value'=>32) ); var_dump(array_column($a,'value')); array_multisort(array_column($a,'value'),SORT_DESC,$a); var_dump($a);

執行結果:
這裡寫圖片描述