各位大神好,我学到函数变量作用域的时候,有一个问题没想明白。$v1 = 1;$v2 = 2;function a(){ global $v1,$v2; $v2 = &$v1;}a();echo 'v2:'.$v2; //输出是v2:2 老师说global其实就是去引用外部的$var,重新开辟了一个存储空间,所以函数内部的操作没有改变函数外部的值。$v1 = 1;$v2 = 2;function a(){ global $v1,$v2; $v2 = $v1;}a();echo 'v2:'.$v2; //输出确实v2:1 那么上面的实例,函数内部的操作却改变了函数外部的值,这是为什么?为什么上面引用却没有影响到外部的值。求大神帮我解惑。本人只是个刚入门的孩子
1 回答
- 1 回答
- 0 关注
- 1038 浏览
添加回答
举报
0/150
提交
取消