foreach循环时调用current等函数数组
结果:函数
按照以前说的,foreach先赋值,再移动指针,再执行循环体,第一次结果为2能够理解为何三次都是2呢?咋就这么2呢?由于current函数是按引用传递的函数spa
在zval笔记中说了,一个zval不能既被引用,又被指向指针
因此,变量分离,从新拷贝一份数组,循环被拷贝的数组,而此时数组的指针指向第二个单元ip
固然,若是数组zval的is_ref为1,则不会拷贝数组了it
或者class
结果:变量