麻辣家族討論版版's Archiver

小誌 發表於 2010-5-10 16:11

(PHP+IIS+MsSQL教學第6篇)運算子

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

[color=green][size=4][b]比較運算子[/b][/size][/color]
「比較運算子」也有人稱之「關係運算子」,比較運算子是用來比較運算符號左右兩邊的資料,然後回傳「True(成立、真)」或「False(不成立、假)」的布林值, PHP中的比較運算子有下列8種
[table]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]定義[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][color=#000000][size=2][font=細明體]運算子[/font][/size][/color][/p][/td][td=1,1,168][p=30, 2, center][color=#000000][size=2][font=細明體]範例([/font][font=Courier New]$X=7,$Y=5[/font][font=細明體])[/font][/size][/color][/p][/td][td=1,1,120][p=30, 2, center][color=#000000][size=2][font=細明體]結果[/font][/size][/color][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]等於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]= =[/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$X= =7
$X= =$Y[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]不等於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]!=[/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$X!=$Y
$Y!=5[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]小於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]< [/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$Y<$X
$X<3[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]大於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]> [/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$X>5
$Y>$X[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]小於或等於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]<=[/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$Y<=5[/size][/color][/font][/p][p=30, 2, center][font=Courier New][color=#000000][size=2]$X<=Y[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]大於或等於[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]>=[/size][/color][/font][/p][/td][td=1,1,168][p=30, 2, center][font=Courier New][color=#000000][size=2]$X>=$Y
$X>=8[/size][/color][/font][/p][/td][td=1,1,120][p=30, 2, center][font=Courier New][color=#000000][size=2]true
false[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]完全相等[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]= = =[/size][/color][/font][/p][/td][td=2,1,288][p=30, 2, left][color=#000000][size=2][font=細明體]當資料值與資料型態都完全相同時為[/font][font=Courier New]True[/font][font=細明體],否則為[/font][font=Courier New]False[/font][font=細明體](此為[/font][font=Courier New]PHP4[/font][font=細明體]新增)[/font][/size][/color][/p][/td][/tr]
[tr][td=1,1,103][p=30, 2, center][color=#000000][size=2][font=細明體]不完全相等[/font][/size][/color][/p][/td][td=1,1,88][p=30, 2, center][font=Courier New][color=#000000][size=2]! = =[/size][/color][/font][/p][/td][td=2,1,288][p=30, 2, center][size=2][color=#000000][font=細明體]當資料值或資料型態不相同時為[/font][font=Courier New]True[/font][font=細明體],否則為[/font][font=Courier New]False[/font][font=細明體](此為[/font][font=Courier New]PHP4[/font][font=細明體]新增)[/font][/color][/size][/p][/td][/tr]
[/table]
例如:
[code]echo (7 > 5);  //輸出答案1,「True」
echo (8 > 9);  //輸出答案0,「False」
echo (8 <= 9);  //輸出答案0,「True」[/code]


[color=green][size=4][b]邏輯運算子[/b][/size][/color]
「邏輯」運算子也是用來比較運算符號左右兩邊的資料,但是,符號左右兩邊的資料值都是布林值(True或False),下列是常用的邏輯運算子:
[table]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]定義[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][color=#000000][size=2][font=細明體]運算子[/font][/size][/color][/p][/td][td=1,1,184][p=30, 2, center][color=#000000][size=2][font=細明體]範例([/font][font=Courier New]$X=true,$Y=false[/font][font=細明體])[/font][/size][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][size=2][font=細明體]結果[/font][/size][/color][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]且[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][font=Courier New][color=#000000][size=2]&&[/size][/color][/font][/p][/td][td=1,1,184][p=30, 2, center][font=Courier New][color=#000000][size=2]$X && $Y
$Y && $X
$X && $X
$Y && $Y[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]False
False
True
False[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]且[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][font=Courier New][color=#000000][size=2]And[/size][/color][/font][/p][/td][td=1,1,184][p=30, 2, center][font=Courier New][color=#000000][size=2]$X And $Y
$Y And $X
$X And $X
$Y And $Y[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]False
False
True
False[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]或[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][font=Courier New][color=#000000][size=2]||[/size][/color][/font][/p][/td][td=1,1,184][p=30, 2, center][font=Courier New][color=#000000][size=2]$X || $Y
$Y || $X
$X || $X
$Y || $Y[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]True
True
True
False[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]或[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][font=Courier New][color=#000000][size=2]or[/size][/color][/font][/p][/td][td=1,1,184][p=30, 2, center][font=Courier New][color=#000000][size=2]$X or $Y
$Y or $X
$X or $X
$Y or $Y[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]True
True
True
False[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]反向[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][font=Courier New][color=#000000][size=2]![/size][/color][/font][/p][/td][td=1,1,184][p=30, 2, center][font=Courier New][color=#000000][size=2]!$X
!$Y[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]False
Ttrue[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,96][p=30, 2, center][color=#000000][size=2][font=細明體]互斥或[/font][/size][/color][/p][/td][td=1,1,81][p=30, 2, center][color=#000000][font=Courier New][size=2]xor[/size][/font][/color][/p][/td][td=1,1,184][p=30, 2, center][color=#000000][font=Courier New][size=2]$X xor $Y
$Y xor $X
$X xor $X
$Y xor $Y[/size][/font][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][font=Courier New][size=2]True
True

False
False[/size][/font][/color][/p][/td][/tr]
[/table]
例如:
[code](true && false); //「false」
(true || false); //「ture」
(! true); //「false」[/code]
又如:
[code](8>5 && 6>4); //「true」[/code]
上式中的「8>5 && 6>4」是先完成「&&」運算子左右兩邊的比較式後再依照其比較結果進行邏輯運算,過程如下:
[code]8>5 && 6>4
= True && True
= True[/code]


[color=green][size=4][b]算術指定運算子[/b][/size][/color]
算術指定運算子其實是用來簡化程式敘述用的,因為有些敘述我們常常會使用,而且是依循相同的規則來撰寫,所以才有這偷懶用的運算子產生:
[table]
[tr][td=1,1,62][p=30, 2, center][size=3][color=#000000][font=細明體]運[size=2]算子[/size][/font][/color][/size][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][size=2][font=細明體]一般表示式[/font][/size][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][size=2][font=細明體]簡化式[/font][/size][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][size=2][font=細明體]範例[/font][/size][/color][/p][/td][/tr]
[tr][td=1,1,62][p=30, 2, center][color=#000000][font=Courier New][size=2]+=[/size][/font][/color][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][font=Courier New][size=2]$X = $X+$Y[/size][/font][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][font=Courier New][size=2]$X += $Y[/size][/font][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][font=Courier New][size=2]$X += 5[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,62][p=30, 2, center][color=#000000][font=Courier New][size=2]-=[/size][/font][/color][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][font=Courier New][size=2]$X = $X-$Y[/size][/font][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][font=Courier New][size=2]$X -= $Y[/size][/font][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][font=Courier New][size=2]$X -= 5[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,62][p=30, 2, center][color=#000000][font=Courier New][size=2]*=[/size][/font][/color][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][font=Courier New][size=2]$X = $X*$Y[/size][/font][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][font=Courier New][size=2]$X *= $Y[/size][/font][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][font=Courier New][size=2]$X *= 5[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,62][p=30, 2, center][color=#000000][font=Courier New][size=2]/=[/size][/font][/color][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][font=Courier New][size=2]$X = $X/$Y[/size][/font][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][font=Courier New][size=2]$X /= $Y[/size][/font][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][font=Courier New][size=2]$X /= 5[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,62][p=30, 2, center][color=#000000][font=Courier New][size=2]%=[/size][/font][/color][/p][/td][td=1,1,141][p=30, 2, center][color=#000000][font=Courier New][size=2]X = X%Y[/size][/font][/color][/p][/td][td=1,1,137][p=30, 2, center][color=#000000][font=Courier New][size=2]X %= Y[/size][/font][/color][/p][/td][td=1,1,123][p=30, 2, center][color=#000000][font=Courier New][size=2]X %= 5[/size][/font][/color][/p][/td][/tr]
[/table]


[color=green][size=4][b]遞增、遞減運算子[/b][/size][/color]
遞增與遞減的指定運算子大多使用於迴圈敘述,用來作為計次變數,以成為結束迴圈敘述的依據。遞增與遞減的指定運算子可以擺在運算元之前或之後,所得結果有些不同:
[table]
[tr][td=1,1,52][p=30, 2, center][color=#000000][size=2][font=細明體]定義[/font][/size][/color][/p][/td][td=1,1,73][p=30, 2, center][color=#000000][size=2][font=細明體]運算子[/font][/size][/color][/p][/td][td=1,1,235][p=30, 2, center][color=#000000][size=2][font=細明體]範例[/font][font=Courier New]($X=5)[/font][/size][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][size=2][font=細明體]結果[/font][/size][/color][/p][/td][/tr]
[tr][td=1,4,52][p=30, 2, center][color=#000000][size=2][font=細明體]遞增[/font][/size][/color][/p][/td][td=1,4,73][p=30, 2, center][font=Courier New][color=#000000][size=2]++[/size][/color][/font][/p][/td][td=1,1,235][p=30, 2, center][font=Courier New][color=#000000][size=2]$Y=($X++)[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]$X=6; $Y=5[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][font=Courier New][color=#000000][size=2]$Y=(++$X)[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]$X=6; $Y=6[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][font=Courier New][color=#000000][size=2]$X++[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]$X=5[/size][/color][/font][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][font=Courier New][color=#000000][size=2]++$X[/size][/color][/font][/p][/td][td=1,1,119][p=30, 2, center][font=Courier New][color=#000000][size=2]$X=5[/size][/color][/font][/p][/td][/tr]
[tr][td=1,4,52][p=30, 2, center][color=#000000][size=2][font=細明體]遞減[/font][/size][/color][/p][/td][td=1,4,73][p=30, 2, center][color=#000000][font=Courier New][size=2]--[/size][/font][/color][/p][/td][td=1,1,235][p=30, 2, center][color=#000000][font=Courier New][size=2]$Y=($X--)[/size][/font][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][font=Courier New][size=2]$X=4; $Y=5[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][color=#000000][font=Courier New][size=2]$Y=(--$X)[/size][/font][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][font=Courier New][size=2]$X=4; $Y=4[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][color=#000000][font=Courier New][size=2]$X--[/size][/font][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][font=Courier New][size=2]$X=3[/size][/font][/color][/p][/td][/tr]
[tr][td=1,1,235][p=30, 2, center][color=#000000][font=Courier New][size=2]--$X[/size][/font][/color][/p][/td][td=1,1,119][p=30, 2, center][color=#000000][font=Courier New][size=2]$X=3[/size][/font][/color][/p][/td][/tr]
[/table]

頁: [1]

麻辣家族討論版版為 麻辣學園 網站成員  由 昱得資訊工作室 © Since 1993 所提供