การสร้างเว็บเพจโดยใช้ภาษา
PHP บทที่ 16
การแบ่งสายงานโดยจำแนกตามเงื่อนไขแบบ
switch-case
นอกเหนือจากการใช้ if-else
ในการจำแนกกรณีตามเงื่อนไขแล้ว เรายังสามารถใช้โครงสร้างแบบ switch-case
ได้ ตัวอย่างเช่น
switch ($day) {
case 1 :
echo "Monday<BR>\n";
break;
case 2 :
echo "Tuesday<BR>\n";
break;
case 3 :
echo "Wednesday<BR>\n";
break;
case 4 :
echo "Thurday<BR>\n";
break;
case 5 :
echo "Friday<BR>\n";
break;
case 6:
echo "Saturday<BR>\n";
break;
case 7 :
echo "Sunday<BR>\n";
break;
default :
echo "error<BR>\n";
} |
ถ้าตัวแปร
$day มีค่าที่อยู่ระหว่าง 1 ถึง 7 ก็จะพิมพ์ชื่อวันเป็นภาษาอังกฤษ
ถ้าตัวแปรมีค่านอกเหนือจากนั้น ซึ่งในกรณีจะเป็น default ในโครงสร้างแบบ
switch-case ก็จะพิมพ์คำว่า error เพื่อให้ผู้ใช้ทราบ
โปรดสังเกตว่า ในแต่ละกรณี จะต้องจบด้วยคำสั่ง break; ยกเว้นแต่ของ
default ซึ่งจะมีหรือไม่ก็ได้ ถ้าเราไม่ได้ใส่คำสั่ง break;
เอาไว้ โปรแกรมก็จะกระทำคำสั่งทุกคำสั่งในกรณีที่อยู่ถัดมา
การจำแนกกรณีไม่จำเป็นต้องอาศัยเฉพาะตัวแปรที่เก็บค่าจำนวนเต็มเท่านั้น
ข้อมูลแบบอื่นก็ใช้ได้ เช่น ใช้ข้อความเป็นตัวจำแนกกรณี เช่น
switch ($answer) {
case "yes" :
echo "The user said 'yes'.\n";
break;
case "no" :
echo "The user said 'no'.\n";
break;
default:
echo "The user said neither 'yes'
nor 'no'.\n";
} |
โปรดสังเกตว่า
การจำแนกโดยใช้ข้อความนี้ จะดูความแตกต่างระหว่างตัวพิมพ์เล็กหรือใหญ่ด้วย
ในบางครั้งเราอาจจะไม่จำเป็นต้องใส่
break; ก็ได้ ตัวอย่างเช่น
switch ($answer) {
case "yes" :
case "no" :
echo "The user said '",$answer,"'.\n";
break;
default:
echo "The user said neither 'yes'
nor 'no'.\n";
} |
|