php递增问题

clipboard.png
这里为什么会输出7啊,我的理解是,$a++是先运算后赋值,所以应该是输出6才对,怎么会是7啊?

阅读 1.9k
2 个回答

$a + $a++中先执行 $a++, $a被压到栈中,值为3. 然后执行++操作后$a变为4, 值为4的a被压到栈中。
然后使用栈中的两个值执行加法操作,得7
示意图

$a(3)  ->   $a(4) -> 加法操作 4 + 3

可以看出前面参与计算的$a是4, 后面参与计算的$a是3

自运算优先,自运算优先

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题