A while ciklusok a PHP legegyszerűbb ciklusai. Éppen úgy viselkednek, mint a C nyelvbeli megfelelőik. A while általános szintaxisa:
while (kifejezés)
utasítás
A while utasítás jelentése egyszerű. Azt mondja a PHP-nek, hogy mindaddig ismételje az utasítás(ok) végrehajtását, amíg a while kifejezés TRUE. Iterációnak nevezzük azt, amikor a PHP egyszer végrehajtja az utasítást/utasításblokkot egy ciklus részeként. A kifejezés értéke a ciklus kezdetekor értékelődik ki, tehát még ha az utasításblokk belsejében hamissá is válik a feltétel, a blokk végrehajtása akkor sem áll meg, csak az iteráció végén [feltéve ha közben megint meg nem változik a feltétel]. Amikor a while kifejezés értéke már az első vizsgálatkor FALSE, akkor az utasítás(blokk) egyszer sem kerül végrehajtásra.
Az if szerkezethez hasonlóan több utasítást csoportosítani lehet a while ciklusban kapcsos zárójelekkel, vagy az alternatív szintaxis használatával:
while (kifejezés):
utasítás
...
endwhile;
Az alábbi példák ugyanazt csinálják - 1-től 10-ig kiírják a számokat:
<?php
/* 1. variáció */
$i = 1;
while ($i <= 10) {
echo $i++; /* a kiírt érték $i, csak
utána növelünk
(post-inkrementáció) */
}
/* 2. variáció */
$i = 1;
while ($i <= 10):
echo $i;
$i++;
endwhile;
?>