【问题标题】:I don't know how to "sort" arrays我不知道如何“排序”数组
【发布时间】:2011-09-22 16:59:12
【问题描述】:

我有这个数组:

array(2) {
  [1]=>
  array(4) {
    ["name"]=>
    string(14) "Les Contenants"
    ["ordre"]=>
    string(1) "3"
    [9]=>
    array(1) {
      ["name"]=>
      string(20) "Corbeilles unitaires"
    }
    [10]=>
    array(1) {
      ["name"]=>
      string(6) "Mannes"
    }
  }
  [6]=>
  array(3) {
    ["name"]=>
    string(7) "L'utile"
    ["ordre"]=>
    string(1) "1"
    [133]=>
    array(3) {
      ["name"]=>
      string(7) "Paniers"
      [192]=>
      array(1) {
        ["name"]=>
        string(13) "à provisions"
      }
      [193]=>
      array(2) {
        ["name"]=>
        string(13) "anses mobiles"
        [201]=>
        array(1) {
          ["name"]=>
          string(19) "non doublés tissus"
        }
      }
    }
  }
}

我需要按这个键对这个数组进行排序:array[$i]['ordre'] 按升序排列。

结果必须是:

array(2) {
  [6]=>
  array(3) {
    ["name"]=>
    string(7) "L'utile"
    ["ordre"]=>
    string(1) "1"
    [133]=>
    array(3) {
      ["name"]=>
      string(7) "Paniers"
      [192]=>
      array(1) {
        ["name"]=>
        string(13) "à provisions"
      }
      [193]=>
      array(2) {
        ["name"]=>
        string(13) "anses mobiles"
        [201]=>
        array(1) {
          ["name"]=>
          string(19) "non doublés tissus"
        }
      }
    }
  }
  [1]=>
  array(4) {
    ["name"]=>
    string(14) "Les Contenants"
    ["ordre"]=>
    string(1) "3"
    [9]=>
    array(1) {
      ["name"]=>
      string(20) "Corbeilles unitaires"
    }
    [10]=>
    array(1) {
      ["name"]=>
      string(6) "Mannes"
    }
  }
}

你有想法吗?

【问题讨论】:

标签: php arrays algorithm multidimensional-array


【解决方案1】:
usort($array,function($a,$b) {return $a['ordre']-$b['ordre'];});

或者,如果您的 PHP 版本不支持 lambda 函数:

usort($array,create_function('$a,$b','return $a["ordre"]-$b["ordre"];'));

【讨论】:

    猜你喜欢
    • 2012-11-11
    • 2023-03-23
    • 2022-12-10
    • 2017-02-22
    • 1970-01-01
    • 1970-01-01
    • 2013-10-20
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多