php

جلسه ۲۵: حلقه for در php

در این درس به مفهوم و پیاده سازی حلقه های for و همچنین حلقه های for تو در تو می پردازیم. سرفصل مباحث این جلسه به شرح زیر می باشد:

  • حلقه for چیست؟
    • syntax
      • توضیحات
    • مثال
      • توضیحات
  • حلقه های for تو در تو
    • مثال
      • توضیحات

حلقه for چیست؟

از حلقه for برای انجام کاری به تعداد دفعات مشخص استفاده می شود. این حلقه مانند حلقه while است با این تفاوت که افزایش شمارنده در شرط حلقه اتفاق می افتد.

Syntax

حلقه for را به صورت زیر می نویسند:

توضیحات

  • مقداردهی اولیه: در این قسمت، به متغیری که از آن برای کنترل حلقه استفاده می کنیم، مقدار اولیه می دهیم.
  • شرط: حلقه فقط در صورتی اجرا می شود که شرط آن برقرار باشد.
  • افزایش: در این قسمت مشخص می کنیم که پس از هر سری اجرای حلقه، متغیر باید به چه صورت تغییر کند.

مثال

در مثال زیر می توانید نحوه عملکرد حلقه for را مشاهده کنید:

<?php
for ($i = 0;$i < 10;$i++)
{
    echo "value of i is: $i\n";
}
?>

توضیحات

برای درک بهتر کد بالا به تصویر زیر مراجعه کنید:   حلقه for چه کار هایی را انجام می دهد؟

  • پیش از شروع اولین اجرای حلقه، مقدار i را برابر ۰ قرار می دهد.
  • سپس، (مانند یک حلقه while عادی) شرط حلقه را بررسی می کند که آیا مقدار i کوچتر از ۱۰ است یا خیر.
  • اگر شرط برقرار بود، برنامه اجرا شده و مقدار برگردانده شده توسط یک عبارت حسابی ساده (یعنی مقدار i ) را چاپ می کند.
  • سپس مکان نمای ترمینال به خط بعدی منتقل می شود.
  • پس از اتمام کار حلقه، یک بار دیگر باتوجه به بخش بروزرسانی مقدار i افزایش پیدا کرده و مقدار آن در بخش شرطی حلقه بررسی می شود.

بنابراین این حلقه به طور کلی، ۱۰ بار اجرا می شود و هر بار مقدار i را چاپ می کند. شما الان شمردن را به برنامتون یاد دادید! متغیر مورد استفاده در حلقه های for به طور معمول عدد صحیح ای است که i، j و یا k نام گذاری می شود. حلقه موجود در مثال بالا را به صورت زیر نیز می توان نوشت:

<?php
$i = 0;

for (;$i < 10;$i++)
{ //initialization can also be done outside loop
    echo "value of i is: $i\n";
}
?>

به همین منوال این قطعه کد را به صورت زیر نیز می توان نوشت:

<?php
$i = 0;

for (;$i < 10;)
{ //initialization can also be done outside loop. Note the semicolon is compulsory
    echo "value of i is: $i \n";
    $i++; //the increment of loop control variable can also be done separately
    
}
?>

حلقه های for تو در تو

ما می توانیم حلقه های for تو در تو بنویسیم. این کار به این معنی است که یک حلقه for را در درون بدنه یک حلقه for دیگر بیاوریم. نحوه نوشتن این نوع حلقه های تو در تو به شکل زیر است:

<?php
for (expression for initialization ; expression for testing ; expression for updating ) {
   for (expression for initialization ; expression for testing ; expression for updating) {
      //body
   }
   //body
} 
?>

مثال

بیایید برای درک بهتر حلقه های for تو در تو، مثالی بزنیم:

<?php
$input = 5;
echo "How many missiles will you fire?\n";
echo "I will fire: $input missiles\n";

for ($i = 0;$i < $input;$i++) { // outer for loop for ($j = 3;$j > 0;$j--)
    { // inner for loop
        echo "$j  ";
    }
    $temp = $i + 1;
    echo "Missile $temp has launched.\n";
}
echo "All missiles have been launched.\n";
?>

توضیحات

در یک حلقه for تو در تو، به ازای هر بار اجرا شدن حلقه بیرونی، حلقه درونی به میزان همه مقادیرش (یعنی تا انتهای حلقه داخلی) اجرا می شود. به طور مثال برای i=0، حلقه درونی از j=3 تا j=1 اجرا می شود و پس از آن مقدار i برابر ۱ می شود و حلقه درونی دوباره به اندازه تمام تکرار های مورد نیازش تکرار می شود و این کار تا زمانی که مقدار i به حدی برسد که شرط حلقه برقرار نباشد و از حلقه خارج شویم، تکرار می شود. برای درک بهتر این موضوع به تصویر زیر نگاه کنید.

خیلی جالبه، نه؟ حالا که با مفهوم حلقه های for و حلقه های for تو در تو آشنا شدید، بیایید تا در بخش بعدی در مورد حلقه foreach بحث کنیم.

نوشته های مشابه

دیدگاهتان را بنویسید

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *

دکمه بازگشت به بالا