为什么在 PHP 的 for 循环中加法不起作用而不是增量运算符?

Why is addition not working instead of increment operator in for loop in PHP?

我需要将 for 循环递增 7 x 7,并使用了 $x + 7 方法,如下所示。但是,它没有用。

for ($x = 1; $x <= 31; $x + 7) { 
    echo $x ."\n";
}

我通过如下重新定义变量解决了这个问题,但我仍然想知道为什么第一种方法不起作用。

for ($x = 1; $x <= 31; $x += 7) { 
    echo $x ."\n";
}

我一般用$x++的方法来增加数值。为什么 $x + 7 不同?

你可以试试:https://glot.io/snippets/g16a4it4il

$x + 7 不会改变 x。它的计算结果只是比 $x 多 7。要将 7 添加到 $x,您可以:

$x += 7

$x = $x + 7

$x++$x 递增 1。它大致相当于 $x = $x + 1$x += 1。 (尽管在表达式中使用时,$x++ 在 发生递增之前求得 $x 的值;有关详细信息,请参阅 What's the difference between ++$i and $i++ in PHP?

for 循环通过每次迭代更改 $x 来工作,直到 $x <= 31 不再是 true

$x + 7 不会改变 $x,所以它会一直保持 1