2013-12-18 14 views
0
$my_array_to_sort=[['id'=>19381881,'value'=>4],['id'=>19970711,'value'=>65],['id'=>19231029,'value'=>18]]; 

我該如何排序這個數組來獲得這樣的數組?如何排序數組中的值

(按「值」排序,由高到低);

$my_sorted_array=[ 
         ['id'=>19970711,'value'=>65], 
         ['id'=>19231029,'value'=>18], 
         ['id'=>19381881,'value'=>4], 
        ]; 
+3

RTFM:php.net/usort – Benubird

+0

[地段這裏的想法](http://stackoverflow.com/search?q=%5Bphp%5D+sort+2d+array)你正在尋找一個2D數組排序。 –

+0

請檢查PHP手冊,然後谷歌,然後SO搜索發佈之前SO。所有三個人都會得到你的答案。 –

回答

0

我做了這個功能,通過它的列的每一個多維數組排序:

function sortArrayBy($array , $column_name,$sort=SORT_DESC){ 
    foreach ($array as $key => $row) { 
    $column[$key] = $row[$column_name]; 
    } 
    array_multisort($column, $sort, $array); 
    return $array; 
} 

這樣稱呼它:

<?php $my_sorted_array = sortArrayBy($my_array_to_sort,'value') ; ?>