PHP 比較運算子:初學者的完整指南

你好,未來的 PHP 巫師們!今天,我們將踏上一段令人興奮的旅程,探索 PHP 比較運算子的世界。別擔心如果你從未寫過一行代碼——我將成為你的友好導遊,到了這個教學的結尾,你將會像專家一樣比較值!

PHP - Comparison Operators

比較運算子是什麼?

在我們深入之前,讓我們先了解比較運算子是什麼。把他們想像成編程世界的裁判。他們查看兩個值,比較它們,並決定比較是真還是假。這就像問:"這個蘋果有那個橙子大嗎?" 但是在代碼中!

我們的明星選手:我們的比較運算子

讓我們來見見我們的明星選手!這是一張我們將要使用的所有比較運算子的表格:

運算子 名稱 示例 結果
== 相等 $a == $b 如果 $a 等於 $b 則為真
=== 完全相同 $a === $b 如果 $a 等於 $b,且它們類型相同則為真
!= 不相等 $a != $b 如果 $a 不等於 $b 則為真
<> 不相等 $a <> $b 如果 $a 不等於 $b 則為真
!== 不完全相同 $a !== $b 如果 $a 不等於 $b,或它們類型不同則為真
< 小於 $a < $b 如果 $a 嚴格小於 $b 則為真
> 大於 $a > $b 如果 $a 嚴格大於 $b 則為真
<= 小於或等於 $a <= $b 如果 $a 小於或等於 $b 則為真
>= 大於或等於 $a >= $b 如果 $a 大於或等於 $b 則為真
<=> 飛船 $a <=> $b 當 $a 小於、等於或大於 $b 時分別返回 -1、0 或 1

現在,讓我們捋起袖子,看看這些運算子在實際中的運作!

相等 (==) 和完全相同 (===) 運算子

相等運算子 (==)

相等運算子 (==) 檢查兩個值是否相等,而不考慮它們的類型。讓我們看一個例子:

$num = 5;
$str = "5";

if ($num == $str) {
echo "它們相等!";
} else {
echo "它們不相等。";
}

這將輸出:"它們相等!"

為什麼?因為 == 運算子只檢查值,而不是類型。所以即使 $num 是整數而 $str 是字符串,它們也被認為是相等的,因為它們都代表數值 5。

完全相同運算子 (===)

現在,讓我們使用完全相同運算子 (===):

$num = 5;
$str = "5";

if ($num === $str) {
echo "它們完全相同!";
} else {
echo "它們不完全相同。";
}

這將輸出:"它們不完全相同。"

=== 運算子更嚴格。它檢查值和類型。所以即使兩個變量都代表 5,它們也不完全相同,因為一個是整數,另一個是字符串。

不相等 (!=, <>) 和不完全相同 (!==) 運算子

這些運算子就像是 == 和 === 的邪惡雙胞胎。它們檢查不等式而不是等式。

$a = 10;
$b = "10";

if ($a != $b) {
echo "不相等!";
} else {
echo "相等!";
}

if ($a !== $b) {
echo "不完全相同!";
} else {
echo "完全相同!";
}

這將輸出:"相等!不完全相同!"

!= 運算子說它們相等(記住,它只檢查值),但 !== 說它們不完全相同(因為它也檢查類型)。

小於 (<) 和大於 (>) 運算子

這些運算子就像是 "誰更高" 的遊戲,但對數字來說。

$age = 25;
$drinking_age = 21;

if ($age > $drinking_age) {
echo "你可以喝一杯!";
} else {
echo "對不起,現在還是喝汽水吧。";
}

這將輸出:"你可以喝一杯!"

小於或等於 (<=) 和大於或等於 (>=)

這些與 < 和 > 相似,但它們包括等於的可能性。

$score = 75;
$passing_grade = 75;

if ($score >= $passing_grade) {
echo "你通過了!";
} else {
echo "下次幸運。";
}

這將輸出:"你通過了!"

即使成績沒有高於及格線,它也與之相等,所以條件為真。

飛船運算子 (<=>)

這個運算子有點特別。當左邊的值小於右邊時返回 -1,等於時返回 0,大於時返回 1。

$a = 5;
$b = 10;

$result = $a <=> $b;

if ($result === -1) {
echo "a 小於 b";
} elseif ($result === 0) {
echo "a 等於 b";
} else {
echo "a 大於 b";
}

這將輸出:"a 小於 b"

飛船運算子在需要對數組或對象進行排序時特別有用。

結論

恭喜你!你剛剛在 PHP 比較運算子的星系中航行。記住,這些運算子就像是木匠工具箱中的工具——每個都有其特定的用途,知道在何時使用哪一個是寫出高效且無錯誤代碼的關鍵。

在不同的情況下練習使用這些運算子。嘗試比較不同類型的值——數字、字符串、布爾值。你越多地與它們交互,你就會越熟練。

並且永遠記住:在編程中,就像在生活中一樣,一切都關乎做出正確的比較!未來的 PHP 大師們,快樂編程!

Credits: Image by storyset