本文主要介紹了php中for迴圈與foreach的區別,具有很好的參考價值。下面跟著小編一起來看下吧
for迴圈與foreach的差異
foreach 依賴IEnumerable.
第一次var a in GetList () 時呼叫GetEnumerator 傳回第一個物件並賦給a,
以後每次再執行var a in GetList() 的時候呼叫MoveNext.直到迴圈結束.
#期間GetList( )方法只執行一次.
+ View Code
for 迴圈靠下標定位. list[3] 相當於*(list + 3).
+ View Code
or 迴圈每次迴圈會呼叫GetCount() 來比較長度. 而foreach 不考慮長度,只呼叫一次GetList().
#結論.
在固定長度或長度不需要計算的時候for迴圈效率高於foreach.
在不確定長度,或計算長度有效能損耗的時候,用foreach比較方便.
並且foreach的時候會鎖定集合中的物件.期間不能修改.
以上就是PHP中for循環與foreach的區別詳解的內容,更多相關內容請關注PHP中文網(www.php.cn)!