php中for和foreach的效能對比
總體來說,如果資料庫過幾十萬了,才能看出來快一點還是慢一點,如果低於10萬的迴圈,就不用測試了。php推薦用foreach。
迴圈數位陣列時,for需要事先count($arr)計算陣列長度,需要引入自增變數$i,每次回圈都要進行條件判斷$i<$c,然後自增$i++,輸出陣列元素時,$arr[$i]需要進行雜湊操作。
而foreach迴圈陣列時,指標會自動指向下一個元素,不需要計算陣列長度,沒有條件判斷和自增變數,呼叫元素時也沒有雜湊操作,所以效能肯定要比for和while高。
另外,for和while對存在鍵值對映的關聯陣列無能為力。所以,遍歷陣列,首選foreach。
foreach也是我PHP裡最喜歡的關鍵字,因為它確實強大。array_map/array_filter/array_walk遍歷陣列的方式和foreach一樣,但需要執行回撥函數,所以也比foreach慢。
更多相關知識,請關注 PHP中文網!!
以上就是php中foreach和for的效能區別是什麼?的詳細內容,更多請關注TW511.COM其它相關文章!