PHP-$a 的值为什么是6呢
$a=1;
$b=&$a;
echo ++$a+ ++$a;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
$a=1;
$b=&$a;
echo ++$a+ ++$a;
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
接受
或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
发布评论
评论(1)
你这个问题其实和 PHP中关于 &:引用符号的使用的问题--类似。
这里解释下原因吧,这是因为php存在"写时复制"的机制,具体"写时复制"是什么,可以来这里看看--PHP内核探索:写时复制COW机制,
其中 ++$a 的执行过程可以在源码的 php-5.3.20Zendzend_vm_execute.h 中第7717行找到,如下:
一个简单强制分离的例子