为了账号安全,请及时绑定邮箱和手机立即绑定

PHP赋值运算符&

那位大神解答下为什么上面例子中的“a”的值改变之后输出“b”的值却没有改变呢?

正在回答

3 回答


$b = $a;   

$c = &$a;

这里$b=$a,是把A得值复制了一份给$b,$b是一个有自己容器的新变量。相当于a箱子里面放了一个苹果,b也学着a(在自己的箱子里面)放了一个苹果。

而$c = &$a;(这里的&是取地址的意思)则是把$c这个变量也指向了$a的箱子,并没有单独为$c开辟一个新箱子,所以相当于$c是共享了$a的容器。


当我们把a箱子中的苹果换成香蕉,b的箱子没做处理,里面肯定还是苹果啊, 而c由于共享的a的箱子,所以c的结果变成了香蕉。



希望你能理解,祝学习进步,加油!

5 回复 有任何疑惑可以回复我~
#1

一切随缘6 提问者

理解了,谢谢你!
2017-03-16 回复 有任何疑惑可以回复我~

666

0 回复 有任何疑惑可以回复我~

这个讲好,一下转过弯来了!

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
PHP入门篇
  • 参与学习       456545    人
  • 解答问题       6590    个

PHP入门教程轻松学习,行业大牛帮您快速掌握PHP编程基础知识。

进入课程

PHP赋值运算符&

我要回答 关注问题
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号