<?php
$x=11;
if ($x++>11)
{
echo "$x";
}
else
{
echo "not greater than $x";
}
?>
此代码的输出为 -不大于 12
我想知道为什么会这样。谢谢!
这里的问题是有两种不同的递增运算符。请参阅文档。
基本上:
-
$x++
按原样使用$x
,然后递增。 -
++$x
增量,然后使用该变量。
由于优先级和增量。在递增之前比较该值。因此,该条件是错误的。如果您执行++$x
而不是x$++
,那么由于前后增量,您将得到不同的结果。如果你在$x++
周围加上括号,那么它将首先被评估,你会把它评估为true。