在php中,比較運算子是允許對兩個值進行比較的一種符號;當用運算子比較兩個值時,結果是一個邏輯值:TRUE(成立)或FALSE(不成立)。 php比較運算子中,「==」和「===」可進行相等比較,「!=」、「」和「!==」可進行不相等比較,「”、“=”可進行大小比較。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
php中的比較運算子
比較運算符,如它們名稱所暗示的,允許對兩個值進行比較。
當用運算子比較兩個值時,結果是一個邏輯值,不是 TRUE(成立) 就是 FALSE(不成立)的運算符號。
PHP中的比較運算子如下表所示:
範例 | 名稱 | 結果 |
---|---|---|
$a == $b | 等於 |
#true ,如果型別轉換後$a等於$b。 |
$a === $b | 全等 |
true ,如果 $a等於$b,而且它們的型別也相同。 |
$a != $b |
#true ,如果型別轉換後$a不等於$b。 |
|
$a $b | 不等 |
#true ,如果類型轉換後$a不等於$b。 |
$a !== $b | 不全等 |
true ,如果 $a不等於$b,或它們的型別不同。 |
$a | 小於 |
#true ,如果$a嚴格小於$b。 |
$a > $b | ##嚴格大於 | $b。 $a 小於等於
|
,如果 | $a小於或等於 | $b。 $a >= $b大於等於
|
# $a大於或等於 | $b||
$a $b | 太空船運算子(組合比較子)當$a小於、等於、大於$b時 分別回傳一個小於、等於、大於0的 | int|
$a ?? $b ?? $c | NULL合併運算子 |
數字與字串比較
如果比較一個數字和字串或比較涉及到數字內容的字串,則字串會轉換為數值並且比較按照數值來進行。但當用 === 或 !== 進行比較時則不進行型別轉換,因為此時型別和數值都要比對。
例如:
<?php var_dump(0 == "a"); // 0 == 0 -> true var_dump("1" == "01"); // 1 == 1 -> true var_dump("10" == "1e1"); // 10 == 10 -> true var_dump(100 == "1e2"); // 100 == 100 -> true ?>
類型轉換
關於不同類型比較之中的型別轉換
比較運算子的使用
#比較運算子常用在 if 條件語句中,用來判斷程式該跳到哪個分支;
if 語句相當於生活中從一個起點到達多個終點,有很多條岔路,該走哪一條需要我們選擇、判斷;
比較運算常用在條件判斷語句中,對於 “==”,當左右兩端相等時,返回TRUE,否則返回FALSE;
對於 “==” ,兩端的操作數相等,數值要相等,操作數的型別也要一樣,才會回傳TRUE,否則回傳FALSE;
比較運算子的運算過程,範例:
<?php $a=36; $b=30; echo "判断a是否等于b:"; echo $a == $b; echo "\r\n"; echo "判断a是否大于b:"; echo $a>$b; echo "\r\n"; echo "判断a是否小于b:"; echo $a<$b; echo "\r\n"; ?>
執行結果如下圖:
if判斷語句
a.單一分支語法:
if(条件){ //代码 }
如果if區塊中就一句程式碼,則大括號是可以省略的。
if(20>10)echo 'true';
替代語法{ = : } = endif
if(20>10): echo 'true'; endif; for(): endfor;
b.雙分支語法:
if(条件){ //代码 }else{ //代码 }
c.多重分支語法:
if(条件){ //代码 }elseif(条件){ //代码 }else{ //代码 }
補充:多路選擇語法:
switch(表达式){ case 常量: 代码; break; case 常量: 代码; break; default: 匹配失败 }
推薦學習:《PHP影片教學》
以上是php中比較運算子是什麼意思的詳細內容。更多資訊請關注PHP中文網其他相關文章!