آموزش رایگان PHP

آموزش جامع حلقه‌های while و do while در PHP به زبان ساده و کاربردی

4م تیر 1405 محراب حسن زاده
آموزش جامع حلقه‌های while و do while در PHP به زبان ساده و کاربردی

مقدمه‌ای بر حلقه‌ها در PHP

در برنامه‌نویسی، مواقع بسیاری پیش می‌آید که مایلید یک بلوک کد مشخص را چندین بار تکرار کنید. نوشتن تکراری کدها نه تنها خسته‌کننده است، بلکه فرآیند نگهداری و دیباگ را نیز به شدت سخت می‌کند. اینجاست که حلقه‌ها (Loops) به کمک شما می‌آیند. در زبان PHP، حلقه‌ها تا زمانی که یک شرط تعریف‌شده صحیح (true) باشد، کدها را تکرار می‌کنند. در این مقاله به سراغ دو حلقه پرکاربرد یعنی while و do-while می‌رویم.

۱. حلقه while در PHP چیست؟

حلقه while ساده‌ترین نوع حلقه شرطی در PHP است. این حلقه ابتدا شرط ورودی را بررسی می‌کند؛ اگر شرط درست (true) باشد، دستورات درون بلوک خود را اجرا می‌کند. این فرآیند بررسی و اجرا تا زمانی که شرط نادرست (false) شود ادامه می‌یابد.

ساختار نوشتاری (Syntax) حلقه while


while (شرط مورد نظر) {
    // کدهایی که باید تکرار شوند
}

مثال عملی از حلقه while

فرض کنید می‌خواهیم اعداد ۱ تا ۵ را در خروجی چاپ کنیم:


$counter = 1;

while ($counter <= 5) {
    echo "شماره: $counter ";
    $counter++; // افزایش گام به گام متغیر
}

توضیح کد: در ابتدا مقدار متغیر $counter برابر با ۱ است. شرط حلقه (کوچک‌تر یا مساوی ۵ بودن) درست است، پس عدد ۱ چاپ شده و مقدار متغیر یک واحد افزایش می‌یابد. این روند تا چاپ عدد ۵ ادامه پیدا می‌کند. زمانی که متغیر ۶ می‌شود، شرط حلقه غلط شده و اجرای حلقه متوقف می‌گردد.

۲. حلقه do-while در PHP چیست؟

حلقه do-while شباهت زیادی به حلقه while دارد با یک تفاوت حیاتی: این حلقه ابتدا کدها را یک‌بار اجرا می‌کند و سپس شرط را بررسی می‌نماید. این یعنی کدهای درون بلوک do-while تحت هر شرایطی حداقل یک مرتبه اجرا خواهند شد، حتی اگر شرط از همان ابتدا غلط باشد.

ساختار نوشتاری (Syntax) حلقه do-while


do {
    // کدهایی که باید تکرار شوند
} while (شرط مورد نظر);

مثال عملی از حلقه do-while

بیایید همان مثال قبلی را با do-while پیاده‌سازی کنیم:


$counter = 1;

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

تفاوت اساسی حلقه‌ی while و do-while در یک نگاه

اصلی‌ترین تفاوت این دو ساختار در زمان بررسی شرط است. برای درک بهتر به کد زیر توجه کنید:


$x = 10;

// در این حلقه هیچ کدی اجرا نمی‌شود زیرا شرط از ابتدا غلط است
while ($x < 5) {
    echo "این متن چاپ نخواهد شد.";
    $x++;
}

// این حلقه با وجود غلط بودن شرط، یک‌بار اجرا می‌شود
do {
    echo "این متن حداقل یکبار چاپ می‌شود!";
    $x++;
} while ($x < 5);

نکته ایمنی: جلوگیری از بروز حلقه بی‌نهایت (Infinite Loop)

یکی از خطاهای رایج در استفاده از حلقه‌ها، ایجاد حلقه‌های بی‌نهایت است. اگر شما شرطی بنویسید که هرگز غلط نشود، یا فراموش کنید مقدار متغیر شمارنده را تغییر دهید، سرور شما تا ابد مشغول پردازش کدهای تکراری شده و نهایتاً با خطای محدودیت زمان اجرا (Execution Timeout) مواجه خواهید شد. همیشه مطمئن شوید شرط حلقه شما پس از چند تکرار به حالت false تغییر وضعیت می‌دهد.

جمع‌بندی

از حلقه while زمانی استفاده کنید که تکرار کد تنها در صورت برقرار بودن شرط الزامی است. اما اگر نیاز دارید کدهای شما حتماً و بدون توجه به برقرار بودن یا نبودن شرط، برای حداقل یک مرتبه اجرا شوند، از ساختار do-while استفاده کنید.


پیشنمایش

پرسش و پاسخ

نظری یافت نشد

مطالب مشابه

آموزش طراحی و استایل‌دهی جدول‌ها در CSS: راهنمای ساده و کاربردی
10م شهریور 1402

آموزش طراحی و استایل‌دهی جدول‌ها در CSS: راهنمای ساده و کاربردی

مطالعه بیشتر
آموزش کامل ساخت و افزودن تقویم فارسی به Input (کامل و استاندارد)
14م خرداد 1405

آموزش کامل ساخت و افزودن تقویم فارسی به Input (کامل و استاندارد)

مطالعه بیشتر
آموزش کامل توابع سازنده (Constructors) و پروتوتایپ‌ها (Prototypes) در جاوا اسکریپت: راهنمای جامع
28م مهر 1403

آموزش کامل توابع سازنده (Constructors) و پروتوتایپ‌ها (Prototypes) در جاوا اسکریپت: راهنمای جامع

مطالعه بیشتر
راهنمای کامل لیست‌ها در HTML: آموزش انواع و اصول سئو
20م مرداد 1402

راهنمای کامل لیست‌ها در HTML: آموزش انواع و اصول سئو

مطالعه بیشتر
تفاوت Callbacks و Promises در جاوا اسکریپت: مقایسه جامع با مثال‌ها
30م مهر 1403

تفاوت Callbacks و Promises در جاوا اسکریپت: مقایسه جامع با مثال‌ها

مطالعه بیشتر
آموزش کامل کار با آرایه‌ها و اشیاء در جاوا اسکریپت: ایجاد، دستکاری و پیمایش
2م شهریور 1403

آموزش کامل کار با آرایه‌ها و اشیاء در جاوا اسکریپت: ایجاد، دستکاری و پیمایش

مطالعه بیشتر
آموزش جامع و گام‌به‌گام حلقه for در PHP + مثال‌های کاربردی
4م تیر 1405

آموزش جامع و گام‌به‌گام حلقه for در PHP + مثال‌های کاربردی

مطالعه بیشتر
تفاوت آرایه عددی، انجمنی و چندبعدی در PHP: راهنمای جامع و کاربردی
24م خرداد 1405

تفاوت آرایه عددی، انجمنی و چندبعدی در PHP: راهنمای جامع و کاربردی

مطالعه بیشتر
چگونه یک فوتر چسبان در CSS بسازیم: آموزش ساخت فوتر ثابت و همیشگی
2م شهریور 1403

چگونه یک فوتر چسبان در CSS بسازیم: آموزش ساخت فوتر ثابت و همیشگی

مطالعه بیشتر
مفاهیم Promise و چگونگی استفاده از آن در جاوا اسکریپت: راهنمای کامل همراه با مثال‌ها
30م مهر 1403

مفاهیم Promise و چگونگی استفاده از آن در جاوا اسکریپت: راهنمای کامل همراه با مثال‌ها

مطالعه بیشتر
استفاده از visibility و opacity در CSS برای مخفی‌سازی عناصر: راهنمای کامل و کاربردی
11م آبان 1403

استفاده از visibility و opacity در CSS برای مخفی‌سازی عناصر: راهنمای کامل و کاربردی

مطالعه بیشتر
آموزش جامع اینترفیس‌ها و کلاس‌ها (Classes) در ES6 جاوا اسکریپت: مفاهیم و کاربردها
28م مهر 1403

آموزش جامع اینترفیس‌ها و کلاس‌ها (Classes) در ES6 جاوا اسکریپت: مفاهیم و کاربردها

مطالعه بیشتر

تمامی حقوق معتلق به ناشر سایت است و کپی از آن پیگرد قانونی دارد