++$a 的用法

++$a 等价于 $a = $a + 1,比如 $a 初始化值为 1,那么 $a = 1 + 1,得出 $a = 2。
++$a 的执行过程:先将 $a 加 1,然后在进行赋值。

$a++ 的用法

先将 $a 值赋值给变量 $x(也就是 $x = $a),然后 $a 值加 1(也就是 $a = $a + 1)。

总结

$x = ++$a 相当于 $a++,$x = $a。
$x = $a++ 相当于 $x = $a,$a++。
++$a 和 $a++ 单独使用时,相当于 $a = $a + 1。
如果赋值给一个新变量,则 ++$a 先将 $a 值加 1,而 $a++ 先将 $a 赋值给新变量。

  1. $a = 1;
  2. $b = $a++; // $b = 1; $a = 2;
  3. $c = ++$a; // $c = 3; $a = 3;

进阶

  1. $a = 1;
  2. $b = $a++ + ++$a; // $b = 1 + 3;
  3. echo $a; // $a = 3;
  4. echo $b; // $b = 4;
  1. $a = 1;
  2. $a++;
  3. ++$a;
  4. $a++;
  5. $b = $a++ + ++$a; // $b = 4 + 6
  6. echo $a; // $a = 6;
  7. echo $b; // $b = 10;

升华

  1. 不论是 $a++ 还是 ++$a;$a的值会一直加 1;
  2. $a++ 先赋值后运算,++$a 先运算后赋值;
  3. 参与运算时 $a++ 等于$a 的值, ++$a 等于 $a + 1 的值。