if else เป็นการใช้งานเงื่อนไข เพื่อสร้างความแตกต่าง โดยหลักการทำงานของ if else เป็นการทำงานแบบตรรกะ เช่น “ถ้าวันนี้ฝนตก จะทำให้ถนนเปียก” หรือ “ถ้าถนนเปียก จะทำให้ถนนลื่น” เป็นต้น
ใน PHP ลักษณะเงื่อนไขมีดังนี้
- if คำสั่งในการรับเงื่อนไขบางอย่าง หากเงื่อนไขเป็นจริงก็ทำงานปกติ เช่น ถ้า(10>1) เงื่อนไขก็เป็นจริง
- if …. else คำสั่งในการรับเงื่อนไขบางอย่าง หากเงื่อนไขเป็นจริงก็ทำงานปกติ แต่ถ้าหากเงื่อนไขเป็นเท็จ จะไปดำเนินการในส่วนของ else ต่อ
- if …. else if …. else คำสั่งในการรับเงื่อนไขมากกว่า 1 เงื่อนไข ถ้าเป็นเท็จทั้งหมด จะไปดำเนินการต่อที่ else
- switch คำสั่งในการเลือกส่วนที่ต้องการดำเนินการในรูปแบบของบล็อกคำสั่ง
ไวยากรณ์ของคำสั่ง if
if (เงื่อนไข) { // ดำเนินการเมื่อเงื่อนไขเป็นจริง }
1.ตัวอย่างการใช้ if พื้นฐาน
<?php if(10>1){ echo "เงื่อนไขเป็นจริง"; } ?>
ไฟล์ที่ 1 ตัวอย่างการใช้ if พื้นฐาน
ไวยากรณ์ของ if …. else
if (เงื่อนไข) { // ดำเนินการเมื่อเงื่อนไขเป็นจริง } else { // ดำเนินการเมื่อเงื่อนไขเป็นเท็จ }
2.ตัวอย่างการใช้ if …. else พื้นฐาน
<?php $gender = "male"; if($gender == "female"){ echo "female"; } else{ echo $gender; // ผลลัพธ์ male } ?>
ไฟล์ที่ 2 ตัวอย่างการใช้งาน if …. else พื้นฐาน
ไวยากรณ์ if …. else if …. else
if (เงื่อนไข) { // ดำเนินการเมื่อเงื่อนไขเป็นจริง } elseif (เงื่อนไขที่ 2) { // ดำเนินการเมื่อเงื่อนไขเป็นจริง } else { // ดำเนินการเมื่อเงื่อนไขทั้งหมดเป็นเท็จ }
3.ตัวอย่างการใช้ if …. else if …. else
<?php if(20<10){ echo "20 น้อยกว่า 10 เท็จ"; } else if(30>20){ echo "30 มากกว่า 20 จริง"; // ผลลัพธ์ 30 มากกว่า 20 จริง } else{ echo "ผิดทุกเงื่อนไขที่กล่าวมา"; } ?>
ไฟล์ที่ 3 การใช้ if … else if …. else พื้นฐาน
ไวยากรณ์ switch
switch (n) { case label1: code to be executed if n=label1; break; case label2: code to be executed if n=label2; break; case label3: code to be executed if n=label3; break; ... default: code to be executed if n is different from all labels; }
อธิบายเพิ่มเติม
- จากไวยากรณ์ของ switch เริ่มต้นด้วยนิพจน์ ส่วนใหญ่มักกำหนดเป็นตัวแปรซึ่งค่าของนิพจน์ จะถูกนำไปจับคู่กับค่าของแต่ละ case
- break กำหนดไว้เพื่อไม่ให้ทำงานนอกเหนือสิ่งที่ต้องการ หรือไม่ให้ทำงานใน case ถัดไปในอัตโนมัติ
- default เป็นคำสั่งสำหรับค่าเริ่มต้น ในกรณีที่ไม่ได้แทนค่านิพจน์ตัวแปร หรือจับคู่ไม่ถูกต้อง
4.ตัวอย่างการใช้งาน switch
<?php $fruit = "Banana"; switch($fruit){ case "Apple": echo "แอปเปิ้ล"; break; case "Banana": echo "กล้วย"; // ผลลัพธ์ กล้วย break; case "Coconut": echo "มะพร้าว"; break; case "Papaya": echo "มะละกอ"; break; default : echo "ผลไม้"; } ?>
ไฟล์ที่ 4 การใช้งาน switch พื้นฐาน