DEX  WAT  LEARN

LEARN  FOR  PHP  WITH  DEX  WAT  DEV

loop

การทำซ้ำหรือการวนซ้ำ ( Loop )

           ในการเขียนโปรแกรมขึ้นมาจะมีการสั่งให้โปรแกรมของเราวนทำงานซ้ำๆเช่น ต้องการให้แสดงตารางซ้ำๆ ต้องการให้แสดงเป็นแถวซ้ำๆ เราเขียนโปรแกรมขึ้นมาหรือเว็บขึ้นมาก็เพื่อให้มันทำงานอะไรที่ซ้ำๆได้เร็วกว่าคนทำ เช่น งานเอกสารต้องทำซ้ำๆเหมือนเดิมเราก็เขียนโปรแกรมขึ้นมาจัดการ ได้หรือแม้แต่ใน code ที่เราเขียนนั้นก็มีส่วนในการทำซ้ำๆเยอะเหมือนกัน โดยในการเขียนโค้ด ในจะนำ Loop เข้ามาช่วยในการทำงานซ้ำๆของโค้ด เพื่อประหยัดเวลาในการเขียน
Loop มีอยู่ 4 ประเภท คือ
- for Loop
- while Loop
- do while Loop
- foreach Loop


for loop

หลักการเขียน for Loop

<?php
           for ([กำหนดตัวแปรสำหรับเริ่มต้น]; [ถ้าตรงเงื่อนไขจะยังวนลูป]; [เพิ่มค่าตัวแปรไปเรื่อยๆจนกว่าจะพ้นเงื่อนไข]) {
                     // ให้ทำอะไรซักอย่างซ้ำๆ
                     }
?>

           for Loop เป็นการทำงานซ้ำๆ โดยตอนแรกเราจะกำหนดค่าเริ่มต้นตัวแปร และต่อมาเราทำการเอาค่า ของตัวแปร ไปเช็คเงื่อนไขว่า ค่าของตัวแปร ตรงกับเงื่นไขหรือไม่ ถ้าตรงเงื่อนไข ให้คำสั่งใน for Loop ทำงาน จากนั้นเพิ่มค่าให้ตัวแปรเพื่อเช็คเงื่อนไขรอบต่อไป

ตัวอย่าง for Loop

<?php
           for($i=0;$i<=10;$i++){
                      echo "ข้อมูลที่".$i."<br>";
           }
?>

แบบทดสอบ


1
- แสดงสูตรคูณแม่ 2


2
- แสดงสูตรคูณแม่ 2
- แสดงเฉพาะผลลัพธ์ที่ > 15


3
- เก็บข้อมูล Array 10 ค่า
- แสดงข้อมูลใน Array ด้วย loop for
- แสดงเฉพาะค่าที่ 2 - 8


ตัวอย่าง while Loop

<?php
           $x = 1;
           while($x <= 5) {
                      echo "แถวที่ : ".$x." <br>";
                      $x++;
           }
?>

แบบทดสอบ


1
- แสดงสูตรคูณแม่ 5


2
- แสดงสูตรคูณแม่ 5
- แสดงเฉพาะผลลัพธ์ที่ > 35


3
- เก็บข้อมูล Array 10 ค่า
- แสดงข้อมูลใน Array ด้วย Loop while
- แสดงเฉพาะค่าที่ 2 - 8

while loop

หลักการเขียน while Loop

<?php
           while ([ถ้าตรงเงื่อนไขจะยังวนลูป]) {
                     // ให้ทำอะไรซักอย่างซ้ำๆ
                     }
?>

                      ลูปของ while นั้นมันจะแตกต่างกับ for ตรงเราต้องกำหนดเงื่อนไขเองหรือกำหนดการเพิ่มค่าเอง หรือไม่ต้องเพิ่มแต่อาจจะเป็นการเปลี่ยนแปลงค่าอย่างใน code ตัวอย่างนั้นเราจะเห็นว่า เราต้องกำหนดตัวแปร $x = 1 ตั้งแต่แรกและมันจะทำการวนทำซ้ำอยู่ 5


do while loop

หลักการเขียน do while Loop

<?php
           do {
                     // ให้ทำอะไรซักอย่างซ้ำๆ
                     }while ([ถ้าตรงเงื่อนไขจะยังวนลูป]);
?>

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

ตัวอย่าง do while Loop


<?php
           $i = 0;
           do {
                     echo "รอบที่ : ".$i." <br>";
                     $i++;
                     }while ($i <= 5);

?>

แบบทดสอบ


1
- แสดงสูตรคูณแม่ 9


2
- แสดงสูตรคูณแม่ 9
- แสดงเฉพาะผลลัพธ์ที่ > 60


3
- เก็บข้อมูล Array 10 ค่า
- แสดงข้อมูลใน Array ด้วย loop do while
- แสดงเฉพาะค่าที่ 2 - 8


ตัวอย่าง while Loop

<?php
           $colors = array("red", "blue", "yellow");
           foreach ($colors as $show) {
                     echo $show;
                     }
?>

แบบทดสอบ


1
- เก็บข้อมูล Array 10 ค่า
- แสดงข้อมูลใน Array ด้วย loop foreach
- แสดงเฉพาะค่าที่ 2 - 8

foreach loop

หลักการเขียน foreach Loop

<?php
           $ตัวแปร = array("1", "2", "3", "4");
           foreach ($ตัวแปร as $ตัวแปรทีมใช้ในการแสดงผล) {
                     echo $ตัวแปรทีมใช้ในการแสดงผล;
                     }
?>

                      foreach loop คำสั่งสำหรับการวนลูปการทำงาน ซึ่งมีข้อดีตรงที่ไำม่จำเป็นจะต้องกำหนดจำนวนรอบในการทำงาน ซึ่งคำสั่ง forearch จะทำงานจนหมดรอบด้วยตัวเอง