【发布时间】:2011-06-11 14:47:47
【问题描述】:
当一个数组被传递给foreach 时,输出顺序是否保证与输入相同?我知道在某些语言中,不能保证输出顺序,因为每个元素都是同时处理的。
例如,我将一个排序数组传递给foreach 以写入文件。我想确保该数组将在输出文件中排序。
【问题讨论】:
-
上面的答案,但是如果您需要在执行 foreach 循环之前对数组进行排序,请查看 array_multisort():php.net/manual/en/function.array-multisort.php
-
在阅读 php
foreachdoc 后,我带着同样的问题来到这里。它没有明确说明订单将保持不变。我不是在谈论示例,也不是 cmets。唯一的参考是reset()谈论当前元素和下一个元素。 -
我也没有。我刚刚查看了所谓的“参考”,并没有看到任何说明 PHP 根据规范保留关联数组的输入顺序的内容。除非有另一个更有意义的参考,否则这个问题仍然没有答案(正式地说),它可能同样取决于实现或版本。
-
我真的希望你在你的问题中给出了一个代码示例。