2013-01-21 151 views
1

我有一個陣列,例如PHP中的foreach循環的順序是什麼?

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

,然後我想打印的所有元素在圖案「鍵是值」。此代碼應該做的工作:

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

我會得到這個?

foo is fooval 
boo is booval 
roo is rooval 

我的意思是順序。它保證它會按照與數組相同的順序執行,或者數組以某種方式排序?

感謝您的任何答案。

+6

你試過了嗎?我的意思是,這是一個有效的問題,你可能只會偶然得到想要的結果,但仍然很容易做一些實驗。 –

回答

5

arrays是有序的值列表,他們的訂單不需要排序。它遵循一個序列

FROM PHP DOC

PHP中的數組實際上是一個有序圖。地圖是一種將值與鍵關聯的類型。這種類型針對多種不同用途進行了優化;它可以被看作是一個數組,列表(向量),散列表(一個映射的實現),字典,集合,堆棧,隊列等等。由於數組值可以是其他數組,因此樹和多維數組也是可能的。

6

它將按順序循環訪問數組。所以在你的具體問題中,你會看到你期望的結果。