當我在php中對一個associatve數組執行foreach循環時,它的執行順序就是它的定義順序。在PHP中保證關聯數組的順序嗎?
例如:
$arr = array("z" => "z", "a" => "a", "b" => "b");
foreach($arr as $key => val)
print("$key: $val\n");
輸出:
z: z
a: a
b: b
鑑於
$arr = array("a" => "a", "b" => "b", "z" => "z");
輸出:
a: a
b: b
z: z
所以我的問題是:這是行爲定義在規格級別?我能否有合理的把握在未來的PHP版本中不會更改此行爲?
+1報價勝過千言萬語。 ;) – Gumbo 2009-06-04 14:38:14
謝謝!無論出於何種原因,我掩飾了這一點 - 可能當我仍然認爲它不適用於關聯數組時。 – Asuah 2009-06-04 14:42:14