Foreach loop
ศศิธร เทพศิริ 630710337
📖foreach loop คืออะไร ?
คำสั่งสำหรับการวนลูปการทำงานที่เป็น array ทั้งหมด เป็นการเข้าถึงข้อมูลใน array ตั้งแต่ตำแหน่งแรกจนถึงสุดท้ายให้เรา โดยมีข้อดีก็คือเราไม่จำเป็นต้องกำหนดจำนวนรอบในการทำงาน เพราะคำสั่ง forearch นี้จะทำงานจนหมดรอบด้วยตัวเอง
💙Flowchart

💚โครงสร้าง foreach loop ใน PHP
🩷foreach มี 2 รูปแบบ คือ
1. การใช้งานพื้นฐานทั่วไป
อันนี้จะเป็นตัวอย่างการใช้งานแบบพื้นๆ ไม่มีอะไรซับซ้อน โดยจะแสดงค่าออกมา 12345 ปกติเลย
2. การใช้งานกับ array ที่มี key
จากตัวอย่างนี้จะเห็นว่าเมื่อเรานำไปใช้กับ array ที่มี key นั้น ไม่ได้ยากหรือว่าซับซ้อนเลย
👉เปรียบเทียบโค้ดของแต่ละภาษา
👉อธิบายการทำงานของแต่ละภาษา
1. Php
เราใช้ foreach เพื่อวนลูปผ่านอาร์เรย์ได้โดยตรง
$colors as $x หมายถึงในแต่ละรอบของการวนลูป ค่าในอาร์เรย์ $colors จะถูกเก็บไว้ในตัวแปร $x
การแสดงผลจะใช้ echo เพื่อพิมพ์ค่าออกมา และขึ้นบรรทัดใหม่ (<br>) ในแต่ละรอบ
2. Java
String i : cars หมายถึง ในแต่ละรอบของการวนลูป ค่าในอาร์เรย์ cars จะถูกเก็บไว้ในตัวแปร i ซึ่งเป็นชนิดข้อมูล String
จากนั้นแสดงผลค่าของ i ในแต่ละรอบและขึ้นบรรทัดใหม่
3. Python
ทำการสร้างลิสต์ (list) ให้ชื่อ numbers กำหนดให้มีค่าเป็นตัวเลข 1 - 5
เราจะใช้ for loop เพื่อทำการวนลูปผ่านแต่ละค่าของลิสต์ numbers
number in numbers หมายถึงในแต่ละรอบที่วนลูป ค่าในลิสต์ numbers จะถูกเก็บไว้ในตัวแปร number
print(number) ใช้แสดงผล number ในแต่ละรอบ โดยจะแสดงผลแต่ละค่าตามลำดับ
4. C
ทำการสร้างอาร์เรย์ชื่อว่า numbers กำหนดให้มีค่าเป็นตัวเลข 1 - 5
เราใช้ sizeof() เพื่อหาขนาดของอาร์เรย์ numbers ทั้งหมด จากนั้นหารด้วยขนาดของตำแหน่งแรก numbers[0] เพื่อหาจำนวนตัวเลขในอาร์เรย์
ผลลัพธ์ที่ได้จะถูกเก็บไว้ในตัวแปร length ซึ่งจะใช้ในการกำหนดจำนวนรอบที่วนลูป
ใช้ for loop เพื่อวนลูปผ่านอาร์เรย์ numbers
ตัวแปร i เริ่มต้นที่ 0 จากนั้นจะเพิ่มค่าทีละ 1 จนถึง length - 1 (เนื่องจากค่าของอาร์เรย์เริ่มจาก 0)
printf("%d\n", numbers[i]); ใช้แสดงผลค่าของ numbers[i] และขึ้นบรรทัดใหม่ (\n) ในแต่ละรอบของการวนลูป
จากนั้นทำการคืนค่า 0 โปรแกรมสิ้นสุดการทำงาน
📝สรุปเปรียบเทียบการทำงานแต่ละภาษา
PHP
foreach
ใช้ง่าย อ่านโค้ดง่าย
จำกัดในการใช้งานเฉพาะอาร์เรย์
Java
foreach (enhanced)
โค้ดกระชับและอ่านง่ายกว่า
ไม่ยืดหยุ่นเท่า for แบบธรรมดา
Python
for
โค้ดสั้น กระชับและง่ายต่อการอ่านมากที่สุด เนื่องจาก Python มีsyntaxที่ง่าย
ไม่สามารถควบคุมรายละเอียดได้มากเท่าไร
C
for ปกติ
มีความยืดหยุ่นสูง และสามารถควบคุมรายละเอียดได้
โค้ดยาว ซับซ้อน ต้องคำนวณความยาวของอาร์เรย์
💻Slide:
📂Clip:
🚩อ้างอิง
foreach loop: mindphp. 2023, August 29. PHP Loop ( ลูป ) คืออะไร ? เขียนโปรแกรมทำงานซ้ำๆ. mindphp.https://www.mindphp.com/developer/26-เทคนิค-การเขียน-php/8886-php-loop.html
คำสั่ง foreach ใน PHP: Deveak. 2014, October 7. คำสั่ง foreach ใน PHP. blog.deveak. www.blog.deveak.com/php/คำสั่ง-foreach-ใน-php.html
Python Foreach: geeksforgeeks. 2024, October 13.Python Foreach How to Program in Python. geeksforgeeks. geeksforgeeks
PHP tutorial: (n.d.). PHP foreach Loop. w3schools. w3schools
foreach loop: (n.d.). คำสั่ง foreach loop และการใช้งานในภาษา C พร้อมตัวอย่างโค้ดและยูสเคส. expert programming tutor. https://expert-programming-tutor.com/tutorial/article/KC0010084004_what_is_foreach_loop_in_C_language.php
คำสั่ง foreach loop: marcuscode. 2016, December 28. คำสั่งวนซ้ำ. marcuscode. https://marcuscode.com/lang/php/loop-statements
What is the PHP foreach loop?: Luis Ramirez Jr. 2024, May 29. Introduction To The Foreach Loop In PHP (With Code Examples). zerotomastery. https://zerotomastery.io/blog/PHP-foreach-loop-explained/
PHP foreach loop: (n.d.). PHP foreach loop. javatpoint. https://www.javatpoint.com/php-foreach-loop
Last updated