حلقه‌ها (Loops)

تکرار کد با حلقه‌های while، do-while، for و foreach در PHP

حلقه چیست؟

حلقه (Loop) یک بلوک کد را چند بار تکرار می‌کند. به‌جای اینکه کد را ۱۰ بار بنویسید، یک حلقه می‌نویسید!

انواع حلقه در PHP

نوعکاربرد
whileتا وقتی شرط درست است
do...whileحداقل یک بار اجرا، بعد شرط
forتعداد مشخص تکرار
foreachپیمایش آرایه

۱. حلقه while

<?php
$i = 1;

while ($i <= 5) {
    echo "شماره: $i<br>";
    $i++;
}
// خروجی: 1, 2, 3, 4, 5
?>
فراموش کردن $i++ باعث حلقه بی‌نهایت می‌شود!

۲. حلقه do...while

ابتدا کد اجرا می‌شود، بعد شرط بررسی می‌گردد. یعنی حداقل یک بار اجرا می‌شود:

<?php
$i = 1;

do {
    echo "شماره: $i<br>";
    $i++;
} while ($i <= 5);
?>

۳. حلقه for

برای تعداد مشخص تکرار، for بهترین انتخاب است:

<?php
for ($i = 1; $i <= 5; $i++) {
    echo "شماره: $i<br>";
}
?>

ساختار for

for (شروع; شرط; گام) {
    // کد
}

۴. حلقه foreach

برای پیمایش آرایه‌ها بهترین انتخاب است:

<?php
$colors = ["قرمز", "سبز", "آبی"];

foreach ($colors as $color) {
    echo $color . "<br>";
}
?>

foreach با کلید و مقدار

<?php
$person = ["name" => "علی", "age" => 25];

foreach ($person as $key => $value) {
    echo "$key: $value<br>";
}
// name: علی
// age: 25
?>

break — خروج از حلقه

با break می‌توانید حلقه را زودتر تمام کنید:

<?php
for ($i = 1; $i <= 10; $i++) {
    if ($i == 5) {
        break;  // حلقه تمام می‌شود
    }
    echo $i . " ";
}
// خروجی: 1 2 3 4
?>

continue — رد کردن یک دور

با continue می‌توانید یک دور را رد کنید:

<?php
for ($i = 1; $i <= 10; $i++) {
    if ($i % 2 == 0) {
        continue;  // اعداد زوج را رد کن
    }
    echo $i . " ";
}
// خروجی: 1 3 5 7 9
?>

حلقه تو در تو

<?php
for ($i = 1; $i <= 3; $i++) {
    for ($j = 1; $j <= 3; $j++) {
        echo "i=$i, j=$j ";
    }
    echo "<br>";
}
?>

این مبحث بخشی از دوره آموزش کامل PHP است.

ابزارهای مرتبط