A while ciklusok a PHP legegyszerűbb ciklusai. Éppen úgy viselkednek, mint a C nyelvbeli megfelelőik. A while általános szintaxisa:
1 2 while (kifejezés) utasítás 3 |
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, az utasítás(blokk) egyszer sem fog végrehajtódni.
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:
1 2 while (kifejezés): utasítás ... endwhile; 3 |
Az alábbi példák egyformák, a számokat írják ki 1-től 10-ig:
1 2 3 /* 1. variáció */ 4 5 $i = 1; 6 while ($i <= 10) { 7 print $i++; /* a kiírt érték $i, csak 8 utána növelünk 9 (post-inkrementáció) */ 10 } 11 12 /* 2. variáció */ 13 14 $i = 1; 15 while ($i <= 10): 16 print $i; 17 $i++; 18 endwhile; 19 20 |