PHP 自增/自減運算子


介紹

PHP 中也定義了 C 語言風格的自增和自減運算子,分別用 **++** 和 **--** 表示。顧名思義,自增運算子 ++ 將運算元變數的值增加 1。自減運算子 -- 將值減少 1。兩者都是一元運算子,因為它們只需要一個運算元。這些運算子 (++ 或 --) 可以用作字首或字尾方式,可以用作表示式,也可以與其他運算子一起用在更復雜的表示式中。

語法

$x=5;
$x=5;
$y=5;
$x++; //postfix increment
$y--; //postfix decrement

++$y; //prefix increment
--$x; //prefix decrement

當單獨使用時,字尾和字首的自增/自減運算子的行為類似。因此,$x++ 和 ++$x 都將 $x 的值增加 1。同樣,$y-- 和 --$y 都將 $y 的值減少 1。

以下程式碼顯示了自增/自減運算子以後綴/字首方式的影響

示例

 線上演示

<?php
$x=5;
$y=5;
$x++; //postfix increment
$y--; //postfix decrement
echo "x = $x y = $y" . "
"; ++$y; //prefix increment --$x; //prefix decrement echo "x = $x y = $y" . "
";; ?>

輸出

將顯示以下結果

x = 6 y = 4
x = 5 y = 5

在賦值表示式中,字尾 ++ 或 -- 運算子的優先順序低於 =。因此,$a=$x++ 的結果是先執行 $a=$x,然後執行 $x++。另一方面,字首 ++/-- 運算子的優先順序高於 =。因此,$b=--$y 的計算順序是先執行 --$y,然後將結果 $y 賦值給 $b。

示例

 線上演示

<?php
$x=5;
$y=5;
$a=$x++; //postfix increment
echo "a = $a x = $x" . "
"; $b=--$y; //prefix decrement echo "b = $b y = $y" . "
"; ?>

輸出

將顯示以下結果

a = 5 x = 6
b = 4 y = 4

也可以對 ASCII 字元變數進行自增/自減運算。自增將導致 ASCII 集中的下一個字元。如果自增超過了集合,即超過了 Z,則將重複下一輪 ASCII 集,即值為 Z 的變數將自增為 AA。自增運算子會忽略非 ASCII 字元(A-Z、a-z 和 0-9 之外的字元)。

示例

 線上演示

<?php
$var='A';
for ($i=1; $i<=3; $i++){
   echo ++$var . "
"; } $var1=1; for ($i=1; $i<=3; $i++){    echo ++$var1 . "
"; } ?>

輸出

將顯示以下結果

B
C
D
2
3
4

更新於:2020年9月19日

11K+ 次瀏覽

開啟您的職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.