遞增/遞減運算子(Incrementing/Decrementing Operator)

在指派運算子的部分曾經提到過$a = $a + $b可以縮寫成$a+=$b

遞增與遞減的運算子也是一種簡寫

而在$b是1和-1的時候

$a = $a + 1可以縮寫成$a+=1,也能簡寫成$a++或是++$a

$a = $a - 1可以縮寫成$a-=1,也能簡寫成$a--或是--$a

也就是把$a加1或是減1

但是++/--放在變數前面還是後面有什麼差別呢?請看下表

運算子 功能 範例
++ 先遞增,再做其他運算 ++$a
++ 先做其他運算,再遞增 $a++
-- 先遞減,再做運算其他 --$a
-- 先做其他運算,再遞減 $a--

如果看不太懂,沒關係,看一下實際例子吧

<?php
    $a = 10;
    echo $a;    //10
    echo $a++;  //10 -> 先將值交給echo運算後輸出(先輸出10),然後才遞增(值才變成11)
    echo $a;    //11

    $a = 10;
    echo $a;    //10
    echo ++$a;  //11 -> 先遞增(變成11),然後再將值與交由echo輸出,所以輸出11
    echo $a;    //10
?>

差別就在於,$a是先加一還是後加一、是否先與其他的程式碼進行運算

這部分新手可能比較常搞混++/--在前與在後的意義,使用上要多注意

而就效能來討論,++/--在前面會比++/--在後面來得效能較好

results matching ""

    No results matching ""