PHP - 選擇結構

引言

你好啊,未來的 PHP 巫師們!今天,我們將踏上一段令人興奮的旅程,探索 PHP 中的選擇結構。作為你們親切友善的鄰居電腦老師,我在這裡引導你們了解編程的這個重要方面。相信我,這堂課結束後,你們將會像專業人士一樣在 PHP 中進行選擇!

PHP - Decision Making

電腦程序中的選擇結構

我們先從一個簡單的比喻開始。想像你站在一個十字路口。你需要根據某些條件來決定走哪條路。這正是編程中的選擇結構的全部內容!

在 PHP 中,就像在真實生活中一樣,我們經常需要根據不同的條件來做選擇。例如,你可能希望你的程序在用戶登錄時做一件事,而在他們未登錄時做另一件事。這就是選擇結構派上用場的地方。

典型的選擇結構

PHP 中典型的選擇結構遵循以下一般模式:

  1. 評估一個表達式
  2. 如果表達式為真,則執行一段特定的代碼
  3. 如果表達式為假,則可能執行另一段代碼

這就像交通燈:如果是綠燈,你就前行;如果是紅燈,你就停下。簡單吧?

PHP 中的選擇語句

現在,讓我們深入了解一下 PHP 中的具體選擇語句。我們將詳細介紹每一個,並提供大量的範例來幫助你理解。

1. if 語句

if 語句是最簡單的選擇結構形式。就像是說,“如果這個條件為真,那就這樣做。”

這裡是基本語法:

if (condition) {
// 如果條件為真,則執行這段代碼
}

讓我們看一個真實世界的範例:

$age = 18;

if ($age >= 18) {
echo "你已經足夠年齡投票!";
}

在這個範例中,如果 $age 變量大於或等於 18,將會顯示消息“你已經足夠年齡投票!”。如果 $age 小於 18,則不會發生任何事情。

2. if...else 語句

if...else 語句允許你在條件為假時指定一個要執行的動作。就像是說,“如果這個條件為真,那就這樣做;否則,那就那樣做。”

這裡是語法:

if (condition) {
// 如果條件為真,則執行這段代碼
} else {
// 如果條件為假,則執行這段代碼
}

讓我們修改我們之前的範例:

$age = 16;

if ($age >= 18) {
echo "你已經足夠年齡投票!";
} else {
echo "對不起,你還沒有足夠年齡投票。";
}

現在,如果 $age 小於 18,程序將輸出“對不起,你還沒有足夠年齡投票。”

3. if...elseif...else 語句

有時候,你需要檢查多個條件。這時,if...elseif...else 語句就非常方便。這就像是一個更複雜的決策樹。

這裡是語法:

if (condition1) {
// 如果 condition1 為真,則執行這段代碼
} elseif (condition2) {
// 如果 condition2 為真,則執行這段代碼
} else {
// 如果兩個條件都為假,則執行這段代碼
}

讓我們看一個範例:

$grade = 85;

if ($grade >= 90) {
echo "你得到了 A!";
} elseif ($grade >= 80) {
echo "你得到了 B!";
} elseif ($grade >= 70) {
echo "你得到了 C!";
} else {
echo "你需要更加努力學習!";
}

在這個範例中,程序會檢查 $grade 變量對多個條件,並輸出相應的消息。

4. switch 語句

switch 語句用於當你有一個變量需要對其檢查多個條件時。這是一種更高效的方式來编写多個 if...elseif 語句。

這裡是語法:

switch (variable) {
case value1:
// 如果 variable == value1,則執行這段代碼
break;
case value2:
// 如果 variable == value2,則執行這段代碼
break;
...
default:
// 如果 variable 與任何 case 都不匹配,則執行這段代碼
}

讓我們看一個範例:

$day = "Monday";

switch ($day) {
case "Monday":
echo "這是工作周的開始!";
break;
case "Friday":
echo "TGIF!";
break;
case "Saturday":
case "Sunday":
echo "這是週末!";
break;
default:
echo "這是個普通的日子。";
}

在這個範例中,switch 語句會檢查 $day 的值,並執行相應的代碼塊。注意周六和周日共享同一段代碼!

5. 三元運算符

三元運算是 if...else 語句的簡略寫法。它對於簡單的條件非常有用。

這裡是語法:

(condition) ? value_if_true : value_if_false;

讓我們看看它是如何工作的:

$age = 20;
$canVote = ($age >= 18) ? "是" : "否";
echo "你可以投票嗎? " . $canVote;

這行簡潔的代碼檢查 $age 是否大於或等於 18,並根據結果將 "是" 或 "否" 賦值給 $canVote

選擇語句總結

這裡是一個方便的表格,總結了我們所介紹的所有選擇語句:

語句 描述 使用場景
if 如果一個條件為真,則執行代碼 簡單條件
if...else 如果一個條件為真,則執行一塊代碼;如果為假,則執行另一塊代碼 二元決策
if...elseif...else 檢查多個條件 複雜決策樹
switch 對一個變量進行多個值檢查 對單一變量的多個條件
三元運算符 簡單的 if...else 語句的簡寫 快速、簡單的條件

結論

恭喜你!你剛剛學會了 PHP 中的選擇結構。記住,熟能生巧。嘗試使用這些語句編寫你自己的 PHP 腳本。很快,你將能夠像決定早餐吃什麼那樣輕鬆地在代碼中做出決策!

快樂編程,願你的決策總能引導你走向無 bug 的代碼!

Credits: Image by storyset