در PHP حلقه ها {loops} به منظور دوباره اجرا کردن همان دسته یا گروه کد تکراری برای دفعات مشخص block of codes} } به کار می رود. PHP از چهار نوع حلقه ای زیر پشتیبانی می کند.

  • For، یک دسته کد را به دفعات مشخصی تکرار می کند.
  • while، یک دسته کد را فقط تا زمانی که وضعیت معینی برقرار باشد تکرار می کند.
  • do. . . while، یک دسته کد را یک بار تکرار می کند، سپس در صورتی که شرایط معین درست باشد آن حلقه را تکرار می کند.
  • foreach، برای هر عنصر یا اِلمانِ موجود در آرایه {array} دسته کد را تکرار می کند.

اکنون درباره ی واژه های کلیدی {continue} ادامه دادن و break {قطع کردن} که برای کنترل کردن اجرا ها و دستورات loop استفاده می شود توضیح می دهیم.
دستور حلقه ای for

دستور حلقه ای for را زمانی استفاده می کنیم که دقیقا بدانیم چند بار می خواهیم یک دستور یا گروهی از دستورها را اجرا کنیم.




for (initialization; condition; increment)
{
code to be executed;
}



در اینجا از مقداردهنده ی اولیه، برای مشخص کردن ارزش اولیه شمارنده ی تعداد دفعات تکرار حلقه ای استفاده می شود.
مثال مثال زیر پنج بار تکرار را نشان می دهد و ارزش مشخص شده دو متغیر را در هر بار گذر یا تکرار حلقه تغییر می دهد.




‎ $a = 0;‎
‎ $b = 0;‎
‎ for( $i=0; $i<5; $i++ )‎
‎ {‎
‎ $a +=10;‎
‎ $b +=5;‎
‎ }‎
‎ echo ("at the end of the loop a=$a and b=$b" );‎
‎ ?>
body>‎
html>‎


نتیجه ی زیر به دست می آید.
At the end of the loop a=50 and b=25 دستور while در loop

دستور while دسته کد را تا زمانی که عبارت آزمایشی {تست عبارت} درست است اجرا می کند.
اگر عبارت آزمایشی درست باشد پس به تبع دسته کد اجرا می شود. پس از اینکه کد اجرا می شود، تست عبارت دوباره ارزشیابی می شود. loop {چرخش و تکرار} همچنان ادامه پیدا می کند تا نتیجه ی آزمایش، عبارت غلط در آید.
دستور نگارش {syntax}

while (condition)
{
code to be executed;
}



:مثال
این مثال در هر مرحله ی چرخش و تکرار حلقه {loop}، یک ارزش را از متغیر کم می کند و در این حالت شمارنده به اضافه کردن ادامه می دهد تا به 10 برسد و ارزشیابی غلط درآید و loop به پایان برسد.












$i = 0;
$num = 50;
while( $i < 10)
{
$num--;
$i++;
}
echo ("Loop stopped at i = $i and num = $num" );
?>


نتیجه زیر به دست می آید.
Loop stopped at i = 10 and num = 40
دستور do. . . . while در loop

دستور do. . . . while هر دسته کد را حداقل یکبار اجرا می کند، سپس تکرار و حلقه را تا زمانی که وضعیت صحیح شود ادامه می دهد.