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

نکته : در دستور while ممکن است به علت درست نبودن شرط تعیین شده هیچگاه دستورات آن اجرا نشوند.ولی در حلقه do … while حتی اگر شرط هم درست نباشد حداقل دستورات حلقه یکبار اجرا  می شوند.

 1 ) حلقه while :

 این حلقه تا زمانی که شرط یا شروط تعیین شده برای آن که در پرانتز مقابل کلمه while قرار دارند درست باشد دستورات خود را بصورت دوره ای تکرار میکند.
 شکل کلی استفاده از این حلقه بصورت زیر است:  Syntax     while ( شرط یا شروط مورد نظر )
     {
         کدها و دستوراتی که می خواهید در حلقه تکرار شوند ;
      }

 مثال :
 < ?php
     while ( $i =< 5 )
       {
          echo "The number is " . $i . "< br >";
          $i++;
        }
 ?>


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

مثال : در مثال زیر یک حلقه ساده را تعریف کرده ایم . شمارنده این حلقه از یک شروع شده و به ازای هر عدد مقدار آن را چاپ می کند . سپس یک واحد شمارنده افزایش می یابد . این روند تا رسیدن شمارنده به عدد 5 ادامه دارد :  Example
 < ? php
    while ( $i <= 5 )
      {
         $i = 1 ;
         echo " The number is " . $i . "< br/ >";
         $i++ ;
       }
 ? >      کد
 The number is 1
 The number is 2
 The number is 3
 The number is 4
 The number is 5