-1

调用die(var_dump($dias));返回:

array (size=2)
  1 => 
    array (size=5)
      0 => float 0.079
      1 => float 0.103
      2 => float 0.128
      3 => float 0.093
      4 => float 0.084
  2 => 
    array (size=5)
      0 => float 0.082
      1 => float 0.083
      2 => float 0.094
      3 => float 0.071
      4 => float 0.094

有或没有foreach($dias as $k => $v) arsort($dias[$k]);它返回相同的东西。

如何在不丢失键引用的情况下重新排序数组?

4

1 回答 1

4

要在 foreach 中修改 php 数组的值,您必须在您前面$v加上一个 & 符号 a la foreach($dias as $k => &$v)。然后使用artsort($v)对子数组进行排序;否则,您正在修改 foreach 执行后不存在的值的副本。有关更多信息,请参阅foreach 手册

于 2013-01-21T23:30:55.900 回答