Board logo

標題: [教學] (PHP+IIS+MsSQL教學第6篇)運算子 [打印本頁]

作者: 小誌    時間: 2010-5-10 16:11     標題: (PHP+IIS+MsSQL教學第6篇)運算子

運算子
在前面章節中,我們使用的「+、-、*、/」等符號,這些用於算術的符號有一個正式的稱呼,叫做「算術運算子」,除了這些算術運算子之外,還有許多的運算子喔,我們現在就來加以說明:

比較運算子
「比較運算子」也有人稱之「關係運算子」,比較運算子是用來比較運算符號左右兩邊的資料,然後回傳「True(成立、真)」或「False(不成立、假)」的布林值, PHP中的比較運算子有下列8種

定義

運算子

範例($X=7,$Y=5

結果

等於

= =

$X= =7
$X= =$Y

true
false

不等於

!=

$X!=$Y
$Y!=5

true
false

小於

<

$Y<$X
$X<3

true
false

大於

>

$X>5
$Y>$X

true
false

小於或等於

<=

$Y<=5

$X<=Y

true
false

大於或等於

>=

$X>=$Y
$X>=8

true
false

完全相等

= = =

當資料值與資料型態都完全相同時為True,否則為False(此為PHP4新增)

不完全相等

! = =

當資料值或資料型態不相同時為True,否則為False(此為PHP4新增)


例如:
  1. echo (7 > 5);  //輸出答案1,「True」
  2. echo (8 > 9);  //輸出答案0,「False」
  3. echo (8 <= 9);  //輸出答案0,「True」
複製代碼



邏輯運算子
「邏輯」運算子也是用來比較運算符號左右兩邊的資料,但是,符號左右兩邊的資料值都是布林值(True或False),下列是常用的邏輯運算子:

定義

運算子

範例($X=true,$Y=false

結果

&&

$X && $Y
$Y && $X
$X && $X
$Y && $Y

False
False
True
False

And

$X And $Y
$Y And $X
$X And $X
$Y And $Y

False
False
True
False

||

$X || $Y
$Y || $X
$X || $X
$Y || $Y

True
True
True
False

or

$X or $Y
$Y or $X
$X or $X
$Y or $Y

True
True
True
False

反向

!

!$X
!$Y

False
Ttrue

互斥或

xor

$X xor $Y
$Y xor $X
$X xor $X
$Y xor $Y

True
True

False
False


例如:
  1. (true && false); //「false」
  2. (true || false); //「ture」
  3. (! true); //「false」
複製代碼

又如:
  1. (8>5 && 6>4); //「true」
複製代碼

上式中的「8>5 && 6>4」是先完成「&&」運算子左右兩邊的比較式後再依照其比較結果進行邏輯運算,過程如下:
  1. 8>5 && 6>4
  2. = True && True
  3. = True
複製代碼



算術指定運算子
算術指定運算子其實是用來簡化程式敘述用的,因為有些敘述我們常常會使用,而且是依循相同的規則來撰寫,所以才有這偷懶用的運算子產生:

算子

一般表示式

簡化式

範例

+=

$X = $X+$Y

$X += $Y

$X += 5

-=

$X = $X-$Y

$X -= $Y

$X -= 5

*=

$X = $X*$Y

$X *= $Y

$X *= 5

/=

$X = $X/$Y

$X /= $Y

$X /= 5

%=

X = X%Y

X %= Y

X %= 5




遞增、遞減運算子
遞增與遞減的指定運算子大多使用於迴圈敘述,用來作為計次變數,以成為結束迴圈敘述的依據。遞增與遞減的指定運算子可以擺在運算元之前或之後,所得結果有些不同:

定義

運算子

範例($X=5)

結果

遞增

++

$Y=($X++)

$X=6; $Y=5

$Y=(++$X)

$X=6; $Y=6

$X++

$X=5

++$X

$X=5

遞減

--

$Y=($X--)

$X=4; $Y=5

$Y=(--$X)

$X=4; $Y=4

$X--

$X=3

--$X

$X=3






歡迎光臨 麻辣家族討論版版 (http://forum.twbts.com/)