php的奇怪行为

Sha*_*ani 1 php c++

今天我注意到了php的模糊性.我运行了这段代码

$i = 5;
$i = $i ++;
var_dump($i); //output 5 instead of 6 
Run Code Online (Sandbox Code Playgroud)

让我们假设初始值$i is 5.现在新值应该是6,但事实证明它是5.当我做同样的事情在C++6的预料.它是一些在PHP中被忽视了多年的错误还是其他一些东西.有人可以解释一下吗?

dec*_*eze 5

为什么你认为这个值应该是 6?

$i正在递增,返回递增之前的值(因为您正在使用后增量运算符)并分配给$i.似乎合乎逻辑.