PHP 中的 ++$i 和 $i++ 有什么区别?

2022-08-30 07:47:37

在 PHP 中 和 之间有什么区别?++$i$i++


答案 1

++$i是前增量,而后增量。$i++

  • 预增量:先递增变量,然后取消引用。i
  • 后增量:取消引用,然后递增i

“利用PHP允许您进行后增量($i ++)和预增量(++$i)的事实。只要你不写$j = $i++之类的东西,意思是一样的,但是预增量几乎快了10%,这意味着当你有机会时,你应该从后期增量切换到预增量,特别是在紧密循环中,特别是如果你对微优化迂腐!“ - TuxRadar

为了进一步澄清,PHP 中的后增量已被记录为存储一个临时变量,该变量归因于这 10% 的开销与预增量。


答案 2

++$i增量 ,但计算结果为增量的值,但计算结果为 的旧值。$i$i+1$i++$i$i

下面是一个示例:

$i = 10;
$a = $i++;
// Now $a is 10, and $i is 11

$i = 10;
$a = ++$i;
// Now $a is 11, and $i is 11

使用 有时使用 会有轻微的性能成本。看,当你做这样的事情$i++

$a = $i++;

你真的在这样做:

$temporary_variable = $i;
$i=$i+1;
$a=$temporary_variable;

推荐