【发布时间】:2017-05-24 07:31:38
【问题描述】:
我在 PHP 中遇到了一个与增量运算符有关的意外问题。请看一下给定的两个程序:
第一个程序:
<?php
$a=5;
$a++;
echo $a;
?>
它打印出 6,我清楚地知道发生了什么,它只是将值增加了 1。
第二个节目:
<?php
$a=5;
$b = $a++; // just assigned incremented value to a new variable b.
echo $b;
?>
它打印 5。
现在这里有点混乱,我只是将递增的值分配给变量,所以我应该打印 6 - 为什么它打印 5?
【问题讨论】:
-
在第二种情况下,$a 的值不会递增,它将被视为 $a 正在分配给 $b。所以值只有 5。
-
$a++,先使用表达式值,然后自动递增。而++$a先自动递增,然后使用表达式值。 -
请阅读后增量运算符here。
-
@RaMeSh 是的,你是对的,但为什么会发生,它也应该增加值。我知道有些东西我没有得到,我只是想知道那是什么。