當數組傳遞給foreach
時,輸出順序是否與輸入相同?我知道在某些語言中,輸出順序不能保證,因爲每個元素都被同時處理。是否保證在PHP中按照數組順序迭代foreach?
例如,我將一個排序數組傳遞給foreach
以寫入文件。我想確保數組將在輸出文件中排序。
當數組傳遞給foreach
時,輸出順序是否與輸入相同?我知道在某些語言中,輸出順序不能保證,因爲每個元素都被同時處理。是否保證在PHP中按照數組順序迭代foreach?
例如,我將一個排序數組傳遞給foreach
以寫入文件。我想確保數組將在輸出文件中排序。
是的......無論您給予foreach的任何順序,它將以相同的順序進行迭代。並在你的情況下array will be sorted in the output file.
是的 - 項目將按照他們在陣列內的相同順序輸出。
這是正確的,foreach
將以與輸入數組相同的順序輸出。
*(參考)* http://php.net/manual/en/control-structures.foreach.php – Gordon 2011-01-19 08:41:20
解答以上,但看看萬一在array_multisort()你需要給數組排序在做一個foreach循環之前: http://php.net/manual/en/function.array-multisort.php – o1iver 2011-01-19 14:32:03