首頁 >後端開發 >PHP問題 >php中foreach和for的效能差別是什麼?

php中foreach和for的效能差別是什麼?

青灯夜游
青灯夜游原創
2020-04-25 14:56:153604瀏覽

php中foreach和for的效能差異是什麼?以下本篇文章給大家比較一下php中的for和foreach的效能,介紹一下foreach和for的差異。有一定的參考價值,有需要的朋友可以參考一下,希望對大家有幫助。

php中foreach和for的效能差別是什麼?

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的效能差別是什麼?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn