Lectia 8 PHP | While loop

Instructiunea while loopWhile Loop este o bucla repetitiva care ruleaza din nou si din nou instructiunile din corpul acesteia cat timp este verificata o expresie.

Structura buclei while este urmatoarea:
while(expresie){corpul while}
Intre parantezele rotunde "()" se introduce o expresie care va fi verificata de mai multe ori. Atata timp cat expresia va fi adevarata se va executa corpul while in mod repetat. Retine faptul ca daca expresia va fi mereu adevarata, atunci corpul while se va executa la infint.
Un exemplu de expresie ar fi "$a < 5". Cat timp valoarea variabilei a va fi mai mica decat 5 se va executa in mod repetat corpul while. Va trebui sa incrementam sau sa decrementam valoarea lui a la fiecare verificare a expresiei pentru a nu se afisa corpul while la infinit.
Despre operatorii de incrementare "++" respectiv decrementare "--" am vorbit in lectia 5. Apasa click aici pentru a-ti reaminti cum se folosesc acesti operatori.

Intre acolade "{}" vom introduce instructiunile pe care dorim sa le afisam. Incrementarea variabilei se va face in corpul while.

EXEMPLU:

<?php

$a = 1;

while($a <= 5){

echo"Acest text se va afisa de 5 ori!", '<br />';

$a++;

}

?>

Acest text se va afisade 5 ori!
Acest text se va afisade 5 ori!
Acest text se va afisade 5 ori!
Acest text se va afisade 5 ori!
Acest text se va afisade 5 ori!


Explicatia exemplului este urmatoarea:
Am declarat variabila a si i-am atribuit valoarea 1.
Am initializat instructiunea while si intre parantezele rotunde am introdus expresia "$a <= 5". Expresia se citeste in felul urmator: cat timp valoarea variabilei a este mai mica sau egala cu 5 sa se afiseze corpul instructiunii while.
In corpul instructiunii while am afisat mesaj (echo "Acest text se va afisa de 5 ori!") si am incrementat cu ajutorul operatorului "++" valoarea variabilei a "a++". Incrementand variabila a am facut ca la fiecare repetare a lui while valoarea acesteia sa se adune cu 1.

Rularea functiei din exemplu a fost facuta dupa cum urmeaza:
Initial valoarea variabilei a a fost egala cu 1. La prima parcurgere a instructiunii while expresia din interiorul parantezelor rotunde a fost adevarata deoarece 1 este mai mic decat 5 si astfel s-a rulat corpul instructiunii while. In corpul while s-a afisat mesajul respectiv pe pagina, dar pentru ca am incrementat variabila a "$a++" valoarea acesteia s-a adunat cu 1. Acum valoarea variabilei este 1+1 care este egal cu 2. La a doua parcurgere a instructiunii while, expresia din interiorul parantezelor a fost din nou adevarat deoarece noua valoare a variabilei a a fost mai mica decat 5 (2<5) ceea ce inseamna ca s-a rulat din nou corpul while si s-a afisat a doua oara mesajul incrementanduse variabila a cu 1 si obtinanduse valoarea 3.
Aceasta repetitie va continua pana in momentul in care valoarea variabilei a va fi egala cu 6. Cand valoarea variabilei a va fi egala cu 6 expresia dintre parantezele rotunde nu va mai fi adevarata deoarece 6 nu este nici mai mic si nici egal cu 5 si asftel bucla while se va opri.

In lectia urmatoare vom vorbi despre instructiunea "For".