while

(PHP 4, PHP 5, PHP 7, PHP 8)

while döngüsü PHP'de yer alan en basit döngü türüdür. C'deki karşılığı ile aynı şekilde çalışır. Bir while deyiminin basit kullanımı:

while (ifade)
    deyim

While deyiminin anlamı basittir. while deyimindeki ifade true olduğu müddetçe etki alanındaki deyimleri PHP tekrar tekrar çalıştırır. İfadenin değeri döngünün her yinelenişinde yeniden değerlendirilir, deyimlerin çalıştırılması sırasında bu ifadenin değeri false olsa bile, etki alanındaki deyimlerin tamamı çalıştırılıncaya kadar işlem devam eder. (PHP döngü içindeki deyimleri her yinelemede bir kere çalıştırır.) while ifadesi daha başlangıçta false değerini verirse while etki alanındaki deyimler tek bir defa bile çalıştırılmaz.

if deyiminde olduğu gibi, birden çok deyimi aynı while döngüsü içinde kaşlı ayraçlar arasında veya iki noktalı sözdizimini kullanarak gruplayabilirsiniz:

while (ifade):
    deyimler
    ...
endwhile;

Aşağıdaki örnekler birbirleri ile aynıdırlar, her ikisi de sayıları 1'den 10'a kadar yazacaktır:

<?php
/* örnek 1 */

$i 1;
while (
$i <= 10) {
    echo 
$i++;  /* yazdırılan değer $i
                    değerinin artıştan önceki
                    değeridir (sonda-arttırım) */
}

/* örnek 2 */

$i 1;
while (
$i <= 10):
    echo 
$i;
    
$i++;
endwhile;
?>

add a note

User Contributed Notes 4 notes

up
-16
Dan Liebner
1 year ago
While loops don't require a code block (statement).

<?php

while( ++$i < 10 ); // look ma, no brackets!

echo $i; // 10

?>
up
-7
razvan_bc at yahoo dot com
4 months ago
assuming you want to have another way to archieve
<?php

for($i=10;$i>0;$i--){
    echo
$i.'<br>';
}

?>

then yo have this:

<?php

$v
=10;
do{
    echo
$v.'<br>';
}while(--
$v);

/*
while(--$v) : 10...1 , when $v==0 stops
*/

?>
up
-38
mparsa1372 at gmail dot com
1 year ago
The example below displays the numbers from 1 to 5:

<?php
$x
= 1;

while(
$x <= 5) {
  echo
"The number is: $x <br>";
 
$x++;
}
?>

This example counts to 100 by tens:

<?php
$x
= 0;

while(
$x <= 100) {
  echo
"The number is: $x <br>";
 
$x+=10;
}
?>
up
-63
er dot sarimkhan786 at gmail dot com
7 years ago
simple pyramid pattern program using while loop
<?php
$i
=1;
while(
$i<=5)
{
   
$j=1;
    while(
$j<=$i)
    {
      echo
"*&nbsp&nbsp";
     
$j++;     
    }
    echo
"<br>";
   
$i++;
}
?>
// or alternatively you can use:
<?php
$i
=1;
while(
$i<=5):

   
$j=1;
    while(
$j<=$i):
      echo
"*&nbsp&nbsp";
     
$j++;     
    endwhile;
   
    echo
"<br>";
   
$i++;
endwhile;
?>
To Top