Astăzi vom discuta despre structurile și buclele de control din PHP. Vă voi arăta cum să utilizați toate structurile principale de control care sunt suportate în PHP, ca în cazul în care, altfel, pentru, foreach, în timp ce și mai mult.
În termeni simpli, o structură de control vă permite să controlați fluxul de execuție a codului în aplicația dvs. În general, un program este executat secvențial, linie cu linie, iar o structură de control vă permite să modificați acel flux, de obicei în funcție de anumite condiții.
Structurile de control sunt caracteristici principale ale limbajului PHP care permit script-ului dvs. să răspundă diferit la diferite intrări sau situații. Acest lucru ar putea permite scriptului dvs. să dea răspunsuri diferite bazate pe intrarea utilizatorului, conținutul fișierelor sau alte date.
Următoarea diagramă explică modul în care funcționează o structură de control în PHP.
După cum puteți vedea în diagrama de mai sus, mai întâi se verifică o condiție. Dacă condiția este adevărată, codul condiționat va fi executat. Cel mai important lucru pe care trebuie să-l reținem este că execuția codului continuă în mod normal după executarea codului condiționat.
Să luăm în considerare următorul exemplu.
În exemplul de mai sus, programul verifică dacă utilizatorul este conectat sau nu. Pe baza statutului de conectare al utilizatorului, acestea vor fi redirecționate fie către Logare pagina sau Contul meu pagină. În acest caz, o structură de control încheie execuția codului redirecționând utilizatorii către o altă pagină. Aceasta este o abilitate crucială a limbajului PHP.
PHP suportă o serie de structuri de control diferite:
dacă
altfel
elseif
intrerupator
in timp ce
do
-in timp ce
pentru
pentru fiecare
Să aruncăm o privire asupra câtorva dintre aceste structuri de control cu exemple.
În secțiunea anterioară, am învățat elementele de bază ale structurilor de control în PHP și utilitatea acestora în dezvoltarea aplicațiilor. În această secțiune, vom trece prin câteva structuri de control importante pe care le veți sfârși în mod frecvent în dezvoltarea aplicațiilor zilnice.
dacă
construct vă permite să executați o bucată de cod dacă expresia furnizată împreună cu ea este evaluată la adevărat.
Să aruncăm o privire la următorul exemplu pentru a înțelege cum funcționează.
30) ecou "Vârsta ta este mai mare de 30!"; ?>
Exemplul de mai sus ar trebui să emită Vârsta dvs. este mai mare de 30 de ani!
mesaj, deoarece expresia este evaluată la adevărat. De fapt, dacă doriți să executați numai o singură instrucțiune, exemplul de mai sus poate fi rescris așa cum se arată în fragmentul următor fără paranteze.
30) ecou "Vârsta ta este mai mare de 30!"; ?>
Pe de altă parte, dacă aveți mai multe declarații de executat, trebuie să utilizați paranteze, așa cum se arată în fragmentul următor.
În secțiunea anterioară, am discutat despre dacă
construct, care vă permite să executați o bucată de cod dacă expresia este evaluată la adevărată. Pe de altă parte, dacă expresia evaluează falsă, nu va face nimic. De cele mai multe ori, doriți să executați un fragment de cod diferit dacă expresia este evaluată ca fiind falsă. Aici este locul altfel
declarația vine în imagine.
Utilizați întotdeauna altfel
declarație împreună cu un dacă
afirmație. Practic, îl puteți defini așa cum se arată în următorul cod pseudo.
dacă (expresie) // codul este executat dacă expresia este evaluată la TRUE altceva // codul este executat dacă expresia este evaluată la FALSE
Să revedem exemplul anterior pentru a înțelege cum funcționează.
Deci, atunci când aveți două opțiuni și una dintre ele trebuie executată, puteți folosi if-else
construi.
Putem considera elseif
declarație ca o extensie la if-else
construi. Dacă aveți mai mult de două opțiuni de alegere, puteți utiliza elseif
afirmație.
Să studiem structura de bază a elseif
, așa cum se arată în următorul cod pseudo.
dacă (expresia1) // codul este executat dacă expresia1 evaluează la TRUE elseif (expresia2) // codul este executat dacă expresia2 evaluează la TRUE elseif (expression3) // codul este executat dacă expresia3 evaluează la TRUE altfel // codul este executat dacă expresia1, expresia2 și expresia3 se evaluează la FALSE, o alegere implicită
Din nou, să încercăm să o înțelegem folosind un exemplu din lumea reală.
30 && $ vârstă < 40) echo "Your age is between 30 and 40!"; elseif ($age > 40 && $ vârstă < 50) echo "Your age is between 40 and 50!"; else echo "Your age is greater than 50!"; ?>
După cum puteți vedea în exemplul de mai sus, avem mai multe condiții, așa că am folosit o serie de elseif
declarații. În cazul în care toate acestea dacă
condițiile de evaluare sunt false, execută codul furnizat în ultima altfel
afirmație.
Instrucțiunea de comutare este oarecum similară cu elseif
pe care tocmai am discutat-o în secțiunea anterioară. Singura diferență este expresia care este verificată.
În cazul elseif
declarație, aveți un set de condiții diferite și o acțiune corespunzătoare va fi executată pe baza unei condiții. Pe de altă parte, dacă doriți să comparați o variabilă cu valori diferite, puteți utiliza funcția intrerupator
afirmație.
Ca de obicei, un exemplu este cel mai bun mod de a înțelege intrerupator
afirmație.
După cum puteți vedea în exemplul de mai sus, dorim să verificăm valoarea $ favourite_site
variabilă și pe baza valorii $ favourite_site
variabilă dorim să tipărim un mesaj.
Pentru fiecare valoare pe care doriți să o verificați cu $ favourite_site
variabilă, trebuie să definiți caz
bloc. Dacă valoarea este potrivită cu un caz, codul asociat cu acel bloc de caz va fi executat. După aceea, trebuie să utilizați pauză
declarație pentru a finaliza executarea codului. Dacă nu utilizați pauză
, executarea script-ului va fi continuată până la ultimul bloc al instrucțiunii switch.
În cele din urmă, dacă doriți să executați o bucată de cod dacă valoarea variabilei nu se potrivește cu niciun caz, o puteți defini sub Mod implicit
bloc. Desigur, nu este obligatorie - este doar o modalitate de a oferi a Mod implicit caz.
Deci asta este povestea structurilor de control condiționate. Vom discuta despre buclele în PHP în următoarea secțiune.
Buclele în PHP sunt utile atunci când doriți să executați o bucată de cod în mod repetat până când o condiție este evaluată la falsă. Deci, codul este executat în mod repetat, atâta timp cât o condiție se evaluează la adevărat, și imediat ce condiția evaluează false, scriptul continuă executarea codului după buclă.
Următoarea diagramă explică modul în care funcționează buclele în PHP.
După cum puteți vedea în captura de ecran de mai sus, o buclă conține o condiție. Dacă condiția este evaluată la adevărat, codul condițional este executat. După executarea codului condițional, controlul revine la starea de buclă, iar fluxul continuă până când starea este evaluată la falsă.
În această secțiune, vom trece prin diferitele tipuri de bucle suportate în PHP.
in timp ce
buclă este utilizat atunci când doriți să executați o bucată de cod în mod repetat, până la in timp ce
condiția este evaluată la falsă.
Puteți să o definiți așa cum se arată în următorul cod pseudo.
în timp ce (expresie) // cod pentru a executa atâta timp cât expresia se evaluează la TRUE
Să aruncăm o privire la un exemplu din lumea reală pentru a înțelege cum in timp ce
buclă funcționează în PHP.
Dacă sunteți familiarizați cu seria Fibonacci, s-ar putea să recunoașteți ceea ce face programul de mai sus - acesta emite seria Fibonacci pentru primele zece numere. in timp ce
buclă este, în general, utilizat atunci când nu știți numărul de iterații care urmează să aibă loc într-o buclă.
face în timp ce
buclă este foarte asemănătoare cu in timp ce
buclă, cu singura diferență fiind faptul că condiția în timp este verificată la sfârșitul primei iterații. Astfel, putem garanta că codul buclă este executat cel puțin o dată, indiferent de rezultatul expresiei în timp.
Să aruncăm o privire la sintaxa lui face în timp ce
buclă.
face // codul de execuție în timp ce (expresie);
Hai să trecem printr-o lume reală pentru a înțelege posibilele cazuri de utilizare în care poți folosi face în timp ce
buclă.
În exemplul de mai sus, încercăm să citim o linie de fișier pe linie. În primul rând, am deschis un fișier pentru citire. În cazul nostru, nu suntem siguri dacă fișierul conține vreun conținut. Astfel, trebuie să executăm fgets
funcționează cel puțin o dată pentru a verifica dacă un fișier conține conținut. Așa că putem folosi face în timp ce
bucla aici. face în timp ce
evaluează starea după prima iterare a bucla.
În general, pentru
buclă este folosit pentru a executa o bucată de cod pentru un anumit număr de ori. Cu alte cuvinte, dacă știți deja de câte ori doriți să executați un bloc de cod, acesta este pentru
care este cea mai bună alegere.
Să aruncăm o privire la sintaxa lui pentru
buclă.
pentru (expr1; expr2; expr3) // cod pentru a executa
Expr1
expresia este folosită pentru inițializarea variabilelor și este întotdeauna executată. expr2
expresia este de asemenea executată la începutul unei buclă, iar dacă ea este evaluată la adevărat, codul buclă este executat. După executarea codului buclă, expr3
este executat. În general, expr3
este folosit pentru a modifica valoarea unei variabile care este utilizată în expr2
expresie.
Să trecem prin exemplul următor pentru a vedea cum funcționează.
", $ i, $ i * $ i);?>
Programul de mai sus scoate pătratul primelor zece numere. Se inițializează $ i
la 1, se repetă atâta timp cât $ i
este mai mică sau egală cu 10 și adaugă 1 la $ i
la fiecare iterație.
pentru fiecare
buclă este folosit pentru a itera peste variabile matrice. Dacă aveți o variabilă de matrice și doriți să treceți prin fiecare element al matricei respective, pentru fiecare
buclă este cea mai bună alegere.
Să aruncăm o privire la câteva exemple.
"$ employee = array ('name' => 'John Smith', 'age' => 30, 'profession' => 'Software Engineer' sprintf ("% s:% s", $ cheie, valoare $); echo"
";>>
Dacă doriți să accesați valorile matricei, puteți utiliza prima versiune a pentru fiecare
ca în exemplul de mai sus. Pe de altă parte, dacă doriți să accesați atât o cheie, cât și o valoare, o puteți face așa cum se arată în $ angajat
exemplu de mai sus.
În acest articol, am discutat diferite structuri de control și bucle în PHP. Ele reprezintă o parte esențială a limbajului de programare PHP sau orice limbaj de programare.
Sper că v-ați bucurat de acest articol și dacă aveți întrebări, nu ezitați să le întrebați folosind feedul de mai jos!