PHP中foreach循环的顺序是什么?

时间:2013-01-21 18:17:13

标签: php arrays sorting loops foreach

我有一个数组,例如

$arr=array(
    "foo" => "fooval",
    "boo" => "booval",
    "roo" => "rooval",
);

然后我想打印模式中的所有元素“key is value”。这段代码可以完成这项工作:

foreach($arr as $key => $val)
    echo $key." is ".$val;

我会得到这个吗?

foo is fooval
boo is booval
roo is rooval

我是指订单。是否保证它将以与给定数组相同的顺序执行,或者数组以某种方式排序?

感谢您的回答。

2 个答案:

答案 0 :(得分:6)

它将按顺序循环遍历数组。因此,在您的具体问题中,您会看到您期望的结果。

答案 1 :(得分:5)

arrays是有序的值列表,其顺序不需要排序。它遵循一个序列

来自PHP DOC

  

PHP中的数组实际上是有序映射。映射是一种将值与键相关联的类型。此类型针对多种不同用途进行了优化;它可以被视为数组,列表(向量),哈希表(地图的实现),字典,集合,堆栈,队列,甚至更多。由于数组值可以是其他数组,因此树和多维数组也是可能的。