如何重新排序多维数组?

时间:2011-12-27 15:43:56

标签: php arrays

如何使用关键标准label按字母顺序对数组进行排序?我尝试使用array_multisortusortrsortsort,但它不起作用。

array(3) {
  [0]=>
  array(2) {
    ["id"]=>
    string(1) "9"
    ["label"]=>
    string(26) "ffffff"
  }
  [1]=>
  array(2) {
    ["id"]=>
    string(2) "10"
    ["label"]=>
    string(25) "aaaaaaaaa"
  }
  [2]=>
  array(2) {
    ["id"]=>
    string(1) "6"
    ["label"]=>
    string(5) "dddddd"
  }
}

1 个答案:

答案 0 :(得分:5)

您可以使用usort()strcmp()

对数组进行排序
usort($arr, function($e1, $e2)
{
    $cmp = strcmp($e1['label'], $e2['label']);
    if($cmp == 0) { return 0; }
    return $cmp > 0 ? 1 : -1;
});