按键值对数组进行排序

时间:2012-06-25 12:18:13

标签: php arrays sorting

  

可能重复:
  How to sort a multidimensional array by a certain key?

我想通过键值对数组进行排序,如下所示:

 $arr = ([0]=>Int(5)
         [1]=> Array ( [0]=>Int(4) , [1]=>String(10) , [2]=>String(22) , ['prop']=>Int(2))
         [2]=> Array ( [0]=>Int(4) , [1]=>String(10) , [2]=>String(22) , ['prop']=>Int(2))
         [3]=> Array ( [0]=>Int(4) , [1]=>String(10) , [2]=>String(22) , ['prop']=>Int(2))
        )

因此,我希望将$ arr按['prop']的值排序。

我尝试了冒泡但没有任何结果。

1 个答案:

答案 0 :(得分:0)

usort($array, function($a, $b) {
    if($a['prop'] == $b['prop']) return 0;
    return ($a['prop'] < $b['prop']) ? -1 : 1;
});

注意:这仅适用于PHP&gt; 5.3(因为它使用an anonymous function