【问题标题】:How to sort a multi-dimensional array by a 4th level value in PHP如何在 PHP 中按 4 级值对多维数组进行排序
【发布时间】:2010-04-20 09:06:05
【问题描述】:

我有一个从 XML 响应转换而来的数组。我需要做的是使用 'COMPANY' 值按字母顺序对数组进行排序。

我曾尝试使用 array_multisort,但我一点运气都没有。任何帮助将不胜感激。

这是数组:

array(1) {
  ["DATASOURCE"]=>
  array(1) {
    ["MEMBER"]=>
    array(4) {
      [0]=>
      array(4) {
        ["REFNO"]=>
        string(6) "000762"
        ["STATUS"]=>
        string(5) "CURRE"
        ["DATE"]=>
        string(8) "20100731"
        ["COMPANY"]=>
        string(80) "Tresham Institute Business Solutions                                            "
      }
      [1]=>
      array(4) {
        ["REFNO"]=>
        string(6) "003721"
        ["STATUS"]=>
        string(5) "CURRE"
        ["DATE"]=>
        string(8) "20100930"
        ["COMPANY"]=>
        string(80) "Triad esign                                                                    "
      }
      [2]=>
      array(4) {
        ["REFNO"]=>
        string(6) "011412"
        ["STATUS"]=>
        string(5) "CURRE"
        ["DATE"]=>
        string(8) "20100630"
        ["COMPANY"]=>
        string(80) "Transpower Drives Ltd                                                           "
      }
      [3]=>
      array(4) {
        ["REFNO"]=>
        string(6) "059647"
        ["STATUS"]=>
        string(5) "CURRE"
        ["DATE"]=>
        string(8) "20100630"
        ["COMPANY"]=>
        string(80) "Trek-Kits Ltd                                                                   "
      }
    }
  }
}

【问题讨论】:

    标签: php arrays sorting multidimensional-array


    【解决方案1】:

    您需要一个函数来对要排序的两个项目进行排序并比较它们。

    function sort_by_company($a, $b)
    {
        return strcmp($a['COMPANY'], $b['COMPANY']);
    }
    

    然后,使用 usort 函数。

    usort($arr['DATASOURCE']['MEMBER'], 'sort_by_company');
    

    【讨论】:

      【解决方案2】:

      您可以使用usort() PHP 函数。

      【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-06-15
      • 1970-01-01
      • 1970-01-01
      • 2014-05-18
      • 2021-07-11
      相关资源
      最近更新 更多