حلقه های while و for در زبان PHP

PHP for and while loop

0 83

حلقه های for و while در PHP

حلقه های php دستوراتی هستند که بلوک خاصی از کد را تا زمانی که شرط خاصی برقرار باشد، اجرا می کنند.

برخی اوقات هنگام کدنویسی متوجه می شویم که می خواهیم قسمتی از کد (بلوکی از کدها) چندین بار و پشت سر هم اجرا شوند. در چنین موقعیتی تکرار کردن کدها فقط باعث طولانی تر شدن سورس کد و کُند شدن برنامه ی ما می شود. برای حل این مشکل حلقه ها در زبان php ارائه شدند:

  • while : یک مجموعه کد را تا زمانی که شرط خاصی برقرار باشد تکرار می کند. از این به بعد به این عمل می گوییم «گردش کردن حلقه».
  • do...while : ابتدا یک بار (فارغ از شرط) بلوک کد را اجرا می کند سپس تا زمانی که شرط برقرار باشد بلوک را دوباره اجرا می کند.
  • for : به تعداد دفعاتی که ما مشخص کنیم کدهای بلوک را اجرا می کند.
  • foreach : در تمام عناصر یک آرایه گردش کرده و بلوک کد را روی تک تک این عناصر اجرا می کند.

حلقه while در PHP

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

در مثال زیر ابتدا مقدار X را 1 قرار می دهیم. سپس کدهای حلقه ی While تا زمانی که x برابر یا کمتر از 5 شود اجرا خواهند شد. در هر دور از اجرا شدن حلقه یک واحد به x اضافه می شود (++x$):

مشاهده ی خروجی

حلقه ی do…while در PHP

این حلقه حداقل یک بار بلوک کد ها را اجرا می کند اما بعد از آن شرط مورد نظر را بررسی می کند و در صورت برقرار آن، بلوکه ها را دوباره اجرا می کند تا زمانی که شرط دیگر برقرار نباشد. ساختار کلی این حلقه بدین شکل است:

مثال زیر ابتدا مقدار x را 1 قرار می دهد سپس حلقه یک خروجی می گیرد و به مقدار x یک واحد اضافه می کند. سپس دوباره شرط بررسی می شود (آیا X کمتر یا مساوی با 5 است؟) و تا زمانی که شرط برقرار باشد حلقه تکرار می شود:

مشاهده ی خروجی

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

به این مثال توجه کنید:

مشاهده ی خروجی

همانطور که می بینید شرط از همان ابتدا هم غلط است اما باز هم یک بار اجرای حلقه را می بینیم.

حلقه for در PHP

این نوع از حلقه ها کدها را به تعدادی که ما مشخص کنیم اجرا می کنند. این حلقه ها زمانی کاربرد دارند که خودمان از قبل بدانیم چند بار می خواهیم حلقه را اجرا کنیم. ساختار کلی این دستور به شکل زیر است:

پارامترهای ساختار بالا:

  • init counter: مقدار اولیه ی شمارنده ی حلقه را مشخص می کند.
  • test counter: در هر گردش حلقه اندازه گیری می شود. اگر مقدار آن برابر TRUE باشد حلقه ادامه می دهد، در غیر این صورت گردش حلقه تمام شده و از آن خارج می شویم.
  • increment counter: مقداری که در هر بار اجرای حلقه به شمارنده اضافه می شود.

مثال زیر اعداد را از 0 تا 10 نمایش می دهد:

مشاهده ی خروجی

حلقه foreach در PHP

این حلقه فقط روی آرایه ها کار می کند و بین تمام جفت های key/value گردش می کند. ساختار کلی این حلقه به شکل زیر است:

در هر بار گردش حلقه، مقدار عنصر فعلی حلقه به value$ داده می شود و به سراغ عضو بعدی حلقه می رویم تا زمانی که بین تمام اعضاء گردش کرده باشیم.

مثال زیر اعضای آرایه را لیست کرده و نمایش می دهد:

مشاهده ی خروجی

یک مثال عملی

ما یک آرایه ی فرضی داریم و می خواهیم به چند روش مختلف در آن گردش کنیم. با دیدن این چند روش روی بحث حلقه ها تسلط نسبی پیدا می کنید.

روش اول – استفاده از while:

خروجی:

Eggs
Bacon
HashBrowns
Beans
Bread
RedSauce

روش دوم – استفاده از حلقه ی For:

به کد زیر توجه کنید:

for ($i = 0; $i < count($arr); $i++)

دستور count یک آرایه را گرفته و تعداد اعضای آن را می شمارد. بنابراین می توانیم به این روش هم عمل کنیم!

خروجی:

Eggs
Bacon
HashBrowns
Beans
Bread
RedSauce

روش سوم – استفاده از Foreach:

خروجی:

Eggs
Bacon
HashBrowns
Beans
Bread

روش چهارم – استفاده از do while:

خروجی:

Eggs
Bacon
HashBrowns
Beans
Bread

روش پنجم – استفاده از ArrayIterator و شیء گرایی:

خروجی:

PHP
C++
C#
Python
Java

ترتیبی که روکسو برای یادگیری مطالب سری آموزش PHP 7 به شما توصیه می‌کند:

ارسال نظر

توجه:‌ آدرس ایمیل شما منتشر نخواهد شد.