【问题标题】:<?php $x=11; if ($x++>11) { echo "$x"; } else { echo "not greater than $x"; } ?> [duplicate]<?php $x=11; if ($x++>11) { echo "$x"; } else { echo "不大于 $x"; } ?> [重复]
【发布时间】:2018-06-13 16:30:40
【问题描述】:
 <?php

 $x=11;
if ($x++>11)
{
    echo "$x";
}
else
{
    echo "not greater than $x";
}
?>

此代码的输出是 - 不大于 12

我想知道为什么会这样。 谢谢!

【问题讨论】:

  • 关键字:后增量
  • 问题标题应该用文字描述问题,而不是重复代码。

标签: php


【解决方案1】:

由于PrecedenceIncrement。该值在递增之前进行比较。因此,该条件是错误的。如果您使用++$x 而不是x$++,那么由于前后增量,您将得到不同的结果。如果你在$x++ 周围加上括号,那么它将首先被评估,然后你将它评估为真。

【讨论】:

    【解决方案2】:

    这里的问题是有两个不同的递增运算符。请参阅documentation

    基本上:

    • $x++ 按原样使用 $x,然后递增。
    • ++$x 递增,然后使用变量。

    【讨论】:

      猜你喜欢
      • 2023-03-19
      • 2013-12-30
      • 2021-05-08
      • 1970-01-01
      • 2016-05-01
      • 2015-01-19
      • 1970-01-01
      • 1970-01-01
      • 2012-11-04
      相关资源
      最近更新 更多