foreach循環時調用current等函數數組
結果:函數
按照以前說的,foreach先賦值,再移動指針,再執行循環體,第一次結果爲2能夠理解爲何三次都是2呢?咋就這麼2呢?由於current函數是按引用傳遞的函數spa
在zval筆記中說了,一個zval不能既被引用,又被指向指針
因此,變量分離,從新拷貝一份數組,循環被拷貝的數組,而此時數組的指針指向第二個單元ip
固然,若是數組zval的is_ref爲1,則不會拷貝數組了it
或者class
結果:變量