php中的for 和foreach效能對比

來源:互聯網
上載者:User

標籤:自增   for   變數   條件   判斷   事先   wal   測試   雜湊   

總體來說,如果資料庫過幾十萬了,才能看出來快一點還是慢一點,如果低於10萬的迴圈,就不用測試了,兩者性差異不明顯。但是我還是推薦用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中的for 和foreach效能對比

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.