Switch 語句
工作原理:
1.對表達式(通常是變量)進行一次計算
2.把表達式的值與結構中 case 的值進行比較
3.如果存在匹配,則執行與 case 關聯的代碼
4.代碼執行後,break 語句阻止代碼跳入下一個 case 中繼續執行
5.如果沒有 case 為真,則使用 default 語句
如果您希望有選擇地執行若干代碼塊之一,請使用 Switch 語句。
使用 Switch 語句可以避免冗長的 if..elseif..else 代碼塊。
語法
代碼如下 復制代碼switch (expression)
{
case label1:
code to be executed if expression = label1;
break;
case label2:
code to be executed if expression = label2;
break;
default:
code to be executed
if expression is different
from both label1 and label2;
}
實例
工作原理:
1.對表達式(通常是變量)進行一次計算
2.把表達式的值與結構中 case 的值進行比較
3.如果存在匹配,則執行與 case 關聯的代碼
4.代碼執行後,break 語句阻止代碼跳入下一個 case 中繼續執行
5.如果沒有 case 為真,則使用 default 語句
<?php
switch ($x)
{
case 1:
echo "Number 1";
break;
case 2:
echo "Number 2";
break;
case 3:
echo "Number 3";
break;
default:
echo "No number between 1 and 3";
}
?>
</body>
</html>
另外一個實例,利用switch實現一個頁面多用途,首先建立test.php頁面:
<?php
echo "<a href='solution.php?action=add'>增加</a><br><br>";
echo "<a href='solution.php?action=del'>刪除</a><br><br>";
echo "<a href='solution.php?action=search'>查找</a><br><br>";
echo "<a href='solution.php?action=update'>更新</a>";
?>
當然這裡sunec省略了其他大部分的代碼,只是把其中一些提交按鈕寫了出來。我們可以看到,無論點擊哪個按鈕,我們都會跳轉到solution.php頁面,唯一不不同的是,問號後的action的內容分成了4種。我們可以把它稱作是一種提示。
接著,讓我們看看solution.php是如何處理這四種操作的。
代碼如下 復制代碼<?php
$action=$_GET["action"];
switch ($action)
{
case "add":
echo "現在可以實現增加功能!";
break;
case "del":
echo "現在可以實現刪除功能!";
break;
case "search":
echo "現在可以實現查詢功能!";
break;
case "update":
echo "現在可以實現更新功能!";
break;
}
?>
再看個簡單的實例
代碼如下 復制代碼<html>
<head>
<title>A switch Statement</title>
</head>
<body>
<?php
$mood = 'sad';
switch ( $mood ) {
case 'happy':
print 'I'm in a good mood';
break;
case 'sad':
print 'Don't be down!';
break;
default:
print 'Neither happy nor sad but $mood';
}
?>
</body>
</html>