在PHP中对多维数组进行排序

时间:2012-04-11 12:36:10

标签: php arrays sorting

  

可能重复:
  Sorting array problem in PHP
  PHP sort multidimensional array by value

我的结果数组是,

Array
(
  [1] => Array
    (
        [Name] =>Name1
        [ID] => 1034
        [QTY] => 55
    )

  [2] => Array
    (
        [Name] => Name2
        [ID] => 110
        [QTY] => 6
    )

)

我希望这个数组按“QTY”排序,如

Array
(
  [1] => Array
     (   [Name] => JeffLerner
        [ID] => 110
        [QTY] => 6

      )

  [2] => Array
     (
        [Name] => Dr CharlieSmithdeal
        [ID] => 1034
        [QTY] => 55
     )

)   

有没有解决方案?

2 个答案:

答案 0 :(得分:1)

您可以使用usort。有关示例,请参阅PHP文档(示例2说明了对多维数组进行排序)

答案 1 :(得分:1)

您可以使用array_multisort()

尝试这样的事情:

foreach ($array as $key => $row) {
    $QTY[$key]  = $row[2];
}

array_multisort($QTY, SORT_DESC, $array);

参考:http://php.net/manual/en/function.array-multisort.php