March 7, 2012

PHP: วนรอบ

การวนรอบ (loop) ใน PHP มี 4 แบบ คือ
  • while ตรวจสอบ แล้วค่อยวนรอบ
  • do...while ทำก่อน 1 ครั้งแล้วค่อยตรวจสอบ
  • for วนรอบตามจำนวนที่กำหนด
  • foreach วนรอบตามจำนวน element ใน array


while

while จะตรวจสอบค่าก่อน หากเป็นจริง จึงวนทำตามคำสั่งภายใน หากเป็นเท็จก็จะไม่วนรอบนั้น ๆ มักใช้ในกรณีที่ไม่รู้จำนวนรอบที่แน่นอน หรือไม่ต้องการหาจำนวนรอบก่อนที่จะวน เช่น วนรอบแสดงข้อมูลจากไฟล์ หรือฐานข้อมูลเป็นต้น while สามารถเขียนได้ 2 แบบ เช่นเดียวกับ switch


do...while

do...while จะทำตามคำสั่งใน do ก่อน 1 ครั้งแล้วค่อยตรวจสอบ หากยังเป็นจริงก็ทำใน do อีก โดยทั่วไปแล้วแทบไม่ต่างจาก while เลย แต่การใช้ do...while เพื่อให้มั่นใจว่า คำสั่งใน loop จะถูกสั่งแน่ ๆ อย่างน้อย 1 ครั้ง

for

for จะวนตามจำนวนที่ระบุเอาไว้จนครบแล้วออกจากการวนรอบ มักใช้ในการวนรอบที่มีจำนวนแน่นอนซึ่งต่างจาก while และ do...while ที่มักใช้กับจำนวนรอบที่ไม่แน่นอน forสามารถเขียนได้ 2 แบบเหมือนกับ while

foreach

foreach ใช้ในการวนดูข้อมูลใน array เป็นหลัก เขียนได้ 2 แบบเช่นกัน

break และ continue

break จะเป็นการออกจากการวนรอบก่อนที่จะครบตามที่กำหนดไว้ continue จะข้ามรอบนั้น ๆ ไป แต่ยังวนรอบอยู่เหมือนเดิม

สรุปเรื่องคำสั่งทางเลือก

จากบทความเรื่อง if...else และ switch กับเรื่องการวนรอบ จะเห็นว่า ใน PHP จะมีคำสั่ง หรือ syntax ทางเลือกอยู่หลายแบบ สรุปรวมเท่าที่เขียนมาทั้งหมดจะมี
  • if...else ที่ใช้ if (): (ร่วมกับ else: และ/หรือ elseif ():) และปิดด้วย endif;
  • switch ที่ใช้ switch (): และปิดด้วย endswitch;
  • while ที่ใช้ while (): และปิดด้วย endwhile;
  • for ที่ใช้ for (): และปิดด้วย endfor;
  • foreach ที่ใช้ foreach (): และปิดด้วย endforeach;

2 comments:

  1. ช่วยเขียนตัวอย่าง
    if(){

    }else{

    }

    แบบที่ endif; ปิดให้ดูทีครับ

    ReplyDelete
    Replies
    1. ย้อนดูได้จากตอนที่ผ่านๆ มาเลยครับ

      Delete