การตรวจสอบเงื ่อนไขใน PHP ไมตรี ริมทอง คอมพิวเตอร์ธุรกิจ มหาวิทยาลัยราชภัฏอุบลราชธานี
การตรวจสอบเงือ่นไขใน PHP
ไมตร ีรมิทอง คอมพวิเตอรธ์ุรกจิ มหาวทิยาลยัราชภฏัอุบลราชธาน ี
การตรวจสอบเงือ่นไขใน PHP
1) if 2) if…else 3) if…else if 4) Switch 5) while และ do … while 6) for 7) foreach
ท าซ า้ หรือ วนลปู
ตรวจสอบเง่ือนไข
ตรวจสอบเงือ่นไขดว้ยค าสัง่ IF • ค าสัง่ if เป็นค าสัง่ส าหรบัสรา้งเงือ่นไขการท างานของโปรแกรมวา่ ถา้
เป็นจรงิกจ็ะใหท้ างานงานหน่ึง ถา้เป็นเทจ็กจ็ะใหท้ างานอกีงานหน่ึง ดงัแผนภาพ
ท ำงำน เหตกุารณ์
เป็นจริง
IF
รปูแบบการใช ้ IF
• รปูแบบค าสัง่
if ( เหตุการณ์ Operator เหตุการณ์ )
{
// งานทีจ่ะตอ้งท า โคด้ทีใ่ชใ้นการประมวลผล หลงั ตรวจสอบเหตุการณ์แลว้มคีา่เทา่กบั True
}
If else
• เป็นค าสัง่ if เหมอืนเดมิ แต่เพิม่สถานการณ์วา่ ถา้มเีหตุการณ์เป็นเทจ็เกดิขึน้จะใหท้ างานอะไร ดงัแผนภาพ
ท างาน ท างาน เหตกุารณ์ if else
เป็นจริง เป็นเทจ็
รปูแบบการใช ้ IF
รปูแบบค าสัง่ if ( เหตุการณ์ Operator เหตุการณ์ )
{
งานทีจ่ะตอ้งท า
}
else
{
งานทีจ่ะตอ้งท า
}
เงือ่นไข elseif
• ค าสัง่ elseif เป็นค าสัง่ส าหรบัสรา้งเงือ่นไขการท างานของโปรแกรมวา่ ถ้าเหตกุารณ์แรกเป็นจริง กจ็ะให้ท างานตามท่ีก าหนดไว้ แต่ถา้ไมเ่ป็นจรงิใหเ้ขา้สูส่ถานการณ์ที ่2 ทีเ่ตรยีมไว ้ถา้เป็นจรงิกใ็หท้ างานตามทีก่ าหนด แต่ถา้ไมเ่ป็นจรงิกใ็หท้ างานตามทีก่ าหนดไวถ้ดัไป
เงือ่นไข elseif
ท างาน เหตกุารณ์ ท างาน ท างาน เหตกุารณ์
if else
เป็นจริง
เป็นเทจ็
เป็นจริง เป็นเทจ็
if else
รปูแบบค าสัง่การท างาน elesif
รปูแบบค าสัง่ if ( เหตุการณ์ Operator เหตุการณ์ ) { งานทีจ่ะตอ้งท า } else if ( เหตุการณ์ Operator เหตุการณ์ ) {งานทีจ่ะตอ้งท า} else {งานทีจ่ะ ตอ้งท า}
if(): ... endif
เหตุการณ์
เหตุการณ์
เหตุการณ์
จบ
จริงท างาน เทจ็ไมท่ างานสง่เหตกุารณ์ท างานตอ่ไป
เทจ็ไมท่ างานสง่เหตกุารณ์ท างานตอ่ไป
เทจ็ไมท่ างานสง่เหตกุารณ์ท างานตอ่ไป
จริงท างาน
จริงท างาน
สิน้สดุการท างาน
รปูแบบค าสัง่
• รปูแบบค าสัง่ if ( เหตุการณ์ Operator เหตุการณ์ ): งานทีต่อ้งท า;
งานทีต่อ้งท า; elseif ( เหตุการณ์ Operator เหตุการณ์ ): งานทีต่อ้งท า;
งานทีต่อ้งท า; else; งานทีต่อ้งท า; endif; จบงาน
วนรอบการท างานดว้ยค าสัง่ while
• ค าสัง่ while เป็นค าสัง่สรา้งเงือ่นไขใหท้ างานวนรอบซ ่าๆกนั จนกว่าตวัแปรทีก่ าหนดจะมคีา่ครบตามเงือ่นไข while จะน าเอาเรือ่งของการก าหนดค่าใหก้บัตวัแปรหรอื Assignment Operators เขา้มาเกีย่วขอ้งดว้ย
• การ Assignment คา่ใหก้บั Operators กค็อืการสรา้งเงือ่นไขและก าหนดคา่ใหก้บัตวัแปรเป็นคา่ต่างๆ จนครบทีก่ าหนด ตวัอย่าง ลองนึกถงึการนบัเลข หรอืการใหค้ะแนน ถา้ถูกตอ้ง จะมคีา่เทา่กบั 1 และเพิม่ค่าให ้1 คะแนน
วนรอบการท างานดว้ย while
while เง่ือนไข งานที่ต้องท า
รูปแบบค ำส่ัง ก าหนดคา่ตวัแปรเร่ิมต้น(Assignment Operators) while ( เหตกุารณ์ Operator เหตกุารณ์ ){ งานที่จะต้องท า}
วนรอบการท างานดว้ย while
วนรอบการท างานดว้ยค าสัง่ for
• รปูแบบค าสัง่
for ( สถานการณ์1 ; สถานการณ์ 2 ; สถานการณ์ 3; ){ งานทีจ่ะตอ้งท า}
for เง่ือนไข งานที่ต้องท า
หยุดการท างานดว้ยค าสัง่ break
for เง่ือนไข งานที่ต้องท า
break
หยดุการท างาน
รปูแบบค าสัง่ break
รปูแบบค าสัง่
for ( สถานการณ์1 ; สถานการณ์ 2 ; สถานการณ์ 3; )
{ เงือ่นไขส าหรบัหยดุการท างาน}
ท างาน
สรา้งทางเลอืกดว้ยค าสัง่ switch
• ค าสัง่ switch ใชใ้นการสรา้งทางเลอืกทีห่ลากหลาย คลา้ยกบั if แต่จะมเีพยีงหน่ึงทางเลอืกออกจากท างาน โดยผลลพัธท์ีไ่ดจ้ากตรวจสอบเหตุการณ์หรอืนิพจน์อยูใ่นรปูของ Boolean คอื True/False
สรา้งทางเลอืกดว้ยค าสัง่ switch รปูแบบค าสัง่
Switch (นิพจน์)
{
Case choice1:
// เงือ่นไขทีต่รงกบั choice1
Break;
Case choice2:
// เงือ่นไขทีต่รงกบั choice2
Break;
Default:
// นิพจน์ทีใ่ชป้ระมวลผล เมือ่เงือ่นไขไมต่รงกบั case ใด ๆ เลย
}
สรา้งทางเลอืกดว้ยค าสัง่ switch
อา้งองิ
• http://php.net/manual/en/control-structures.switch.php
• php ฉบบัโปรแกรมเมอร.์ กติต ิภกัดวีฒันะกุล . เคทพี ีคอมพ ์แอนด ์คอนซลัท,์ 2545
• ดร.ภาสกร เรอืงรอง. ภาควชิาเทคโนโลยแีละสือ่สารการศกึษา คณะศกึษาศาสตร ์มหาวทิยาลยันเรศวร , www.thaiwbi.com