แนะนำตัว
การดำเนินการตามเงื่อนไขของคำสั่งตั้งแต่หนึ่งคำสั่งขึ้นไปเป็นคุณลักษณะที่สำคัญที่สุดของภาษาการเขียนโปรแกรมใดๆ PHP ให้ความสามารถนี้ด้วยคำสั่ง if, else และ elseif การใช้คำสั่ง if เบื้องต้นมีดังนี้ -
ไวยากรณ์
if (expression) statement;
นิพจน์ที่อยู่ข้างหน้า if คีย์เวิร์ดเป็นนิพจน์เชิงตรรกะ ประเมินเป็น TRUE หรือ FALSE หากค่าเป็น TRUE คำสั่งในบรรทัดถัดไปจะถูกดำเนินการ มิฉะนั้น จะถูกละเว้น หากมีมากกว่าหนึ่งคำสั่งที่จะดำเนินการเมื่อนิพจน์เป็น TRUE คำสั่งจะถูกจัดกลุ่มโดยใช้วงเล็บปีกกาเพิ่มเติม
if (expression){ statement1; statement2; .. }
หากจำเป็นต้องใช้ staement อื่นหรือกลุ่มของคำสั่งเมื่อนิพจน์เป็น FALSE จะใช้คีย์เวิร์ด else และคำสั่งอย่างน้อยหนึ่งรายการ (ในวงเล็บปีกกาอีกคู่หนึ่ง) จะถูกเขียนไว้ด้านล่าง
if (expression){ statement1; statement2; .. } else { statement3; statement4; .. }
ตัวอย่างต่อไปนี้แสดงการใช้คีย์เวิร์ด if และ else ตามปกติ นอกจากนี้ยังใช้ฟังก์ชัน readline() เพื่ออ่านอินพุตของแป้นพิมพ์ในการเรียกใช้บรรทัดคำสั่งของโค้ดต่อไปนี้ ได้รับเครื่องหมายเป็นอินพุตและแสดงผลว่าผ่านหรือไม่ผ่านขึ้นอยู่กับเครื่องหมาย>=50 หรือไม่
ตัวอย่าง
<?php $marks=(int)readline("enter marks: "); if ($marks>=50){ echo "The result is pass" . "\n"; echo "congratulations" . "\n"; } else{ echo "The result is Fail". "\n"; echo "Better luck next time" . "\n"; } ?>
ผลลัพธ์
สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -
The result is Fail Better luck next time
หลายครั้ง หากเงื่อนไขเป็นเท็จ คุณอาจต้องตรวจสอบว่ามีการปฏิบัติตามเงื่อนไขอื่นหรือไม่ ในกรณีนี้ ต้องใช้คำสั่ง if อื่นในประโยค else ของ first if อาจมีชุดของ cascaded if - else บล็อกซึ่งทำให้โปรแกรมน่าเบื่อ PHP มีคำสั่ง elseif เพื่อแก้ไขปัญหานี้
ตามที่คีย์เวิร์ดระบุ elseif คือการรวมกันของ if และ else คีย์เวิร์ด มันทำงานคล้ายกับคีย์เวิร์ด else โดยมีความแตกต่างเล็กน้อย ตรรกะแบบมีเงื่อนไขของโค้ดมีหลายเงื่อนไข if โฟลว์ของโปรแกรมตกหล่นตามเงื่อนไขของelseifเงื่อนไขและอินสแตนซ์แรกของนิพจน์ elseif เป็นจริง บล็อกของมันถูกดำเนินการและการดำเนินการออกมา Last conditional block เป็นส่วนหนึ่งของส่วนคำสั่ง else ซึ่งจะถูกดำเนินการก็ต่อเมื่อทั้งหมดอยู่ข้างหน้า if และ elseif expressions เป็นเท็จ
ไวยากรณ์
if (expression){ statement; } elseif (expression){ statement; } elseif (expression){ statement; } . . else{ statement; } }
ในตัวอย่างต่อไปนี้ คำสั่ง elseif ใช้ในการคำนวณเกรดของนักเรียนตามคะแนน
ตัวอย่าง
<?php $marks=(int)readline("enter marks: "); if ($marks<35) echo "fail"; elseif ($marks<50) echo "pass class"; elseif ($marks<60) echo "second class"; elseif ($marks<75) echo "first class"; else echo "distinction"; ?>
ผลลัพธ์
สิ่งนี้จะทำให้เกิดผลลัพธ์ดังต่อไปนี้ -
fail