คำสั่ง for นั้นมีลักษณะคล้าย ๆ กับคำสั่ง while เพียงแต่ว่าเราสามารถกำหนดค่าเริ่มต้น ของลูป กำหนดเงื่อนไข และเพิ่มค่าตัวแปรของลูป ได้ภาย ในบรรทัดเดียวเท่านั้น
ผมจะเปรียบเทียบการวนลูปโดยใช้คำสั่ง while กับคำสั่ง for ให้ผู้อ่าน พิจารณานะครับ
<?php // คำสั่ง while $counter = 0; while ($counter < 10) { echo "Counter is $counter\n"; $counter++; } // คำสั่ง for for ($counter = 0; $counter < 10; $counter++) { echo "Counter is $counter\n"; } ?>
ถ้าผู้อ่านยังไม่ค่อยเข้าใจ ผมจะให้ผู้อ่านได้ดูรูปแบบของคำสั่ง for ดังนี้
# รูปแบบคำสั่ง
for (initialVariable; condition; increment) {
statement
}
คำสั่ง for นั้นสามารถเขียนได้อีกรูปแบบหนึ่งดังนี้ (รูปแบบและตัวอย่าง)
# รูปแบบ for (initialVariable; condition; increment) : statement; ... ; endfor;
<?php $total = 0; for ($i = 1; $i <= 10; $i++) : $total += $i; endfor; ?>
นอกจากนี้เราสามารถกำหนด expression ในการกำหนดค่าเริ่มต้นของลูป และค่า increment ของลูปได้ โดยคั่นแต่ละ expression ด้วยเครื่องหมาย comma (,) ดังนี้
<?php
$total = 0;
for ($i = 0, $j = 0; $i <= 10; $i++, $j *= 2) {
$total += $j;
}
?>
ในคำสั่ง for ก็สามารถใช้ keyword break และ continue ได้เช่นกัน
ผู้สนับสนุน