扫码关注官方订阅号
$a = 1; 为何 $a + $a++ 和 $a + $a + $a++ 都等于 3? 图:
$a = 1;
$a + $a++
$a + $a + $a++
3
业精于勤,荒于嬉;行成于思,毁于随。
又一个PHP操作符优先级的问题
具体请查阅:运算符优先级
第一种情况:
$a = 1; var_dump($a + $a++);
此时$a++先运算;$a + $a++ 等价于:2 + 1 所以结果为3;
第二种情况:
$a = 1; var_dump($a + $a + $a++);
此时从左至右运算,$a + $a 先运算,得出结果:2,并且将结果保存。 然后在运算$a++(此时前面已经计算好的$a+$a=2的值不受影响) ,以上等价于:2 + 1 结果依旧是3
最后,哪里来那么多这样无聊的坑爹的问题?
最最后 PHP 操作符优先级别真的很蛋疼!!!
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
PHP学习
技术支持
返回顶部
又一个PHP操作符优先级的问题
具体请查阅:运算符优先级
第一种情况:
此时$a++先运算;$a + $a++ 等价于:2 + 1 所以结果为3;
第二种情况:
此时从左至右运算,$a + $a 先运算,得出结果:2,并且将结果保存。 然后在运算$a++(此时前面已经计算好的$a+$a=2的值不受影响) ,以上等价于:2 + 1 结果依旧是3
最后,哪里来那么多这样无聊的坑爹的问题?
最最后 PHP 操作符优先级别真的很蛋疼!!!