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

err*_*ata 3 php sorting multidimensional-array

我有一个'简单'的多维数组,如下所示:

array(3) {
  ["user 1"]=>
  array(4) {
    [0]=>
    array(1) {
      ["item 4"]=>
      string(5) "11385"
    }
    [1]=>
    array(1) {
      ["item 2"]=>
      string(6) "144268"
    }
    [2]=>
    array(1) {
      ["item 1"]=>
      string(5) "65774"
    }
    [3]=>
    array(1) {
      ["item 9"]=>
      string(5) "98523"
    }
  }
  ["user 5"]=>
  array(1) {
    [0]=>
    array(1) {
      ["item 8"]=>
      string(6) "239233"
    }
  }
  ["user 2"]=>
  array(2) {
    [0]=>
    array(1) {
      ["item 4"]=>
      string(5) "53718"
    }
    [1]=>
    array(1) {
      ["item 1"]=>
      string(6) "154687"
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

我需要做的是先按用户排序我的数组,然后按项目排序.上升.我怎么能这样做?如有必要我会提供一些代码:)

谢谢!

Liz*_*ard 5

ksort 按键排序

$newArray = array();

# start by sorting users
$yourArray = ksort($yourArray);

# then sort sub items
foreach($yourArray as $user=>$theirItems) {
    $theirItems = ksort($theirItems); # assuming you still want to sort by key;
    $newArray[$user] = $theirItems;
}

var_dump($newArray);
Run Code Online (Sandbox Code Playgroud)