Home - qdidactic.com
Didactica si proiecte didacticeBani si dezvoltarea cariereiStiinta  si proiecte tehniceIstorie si biografiiSanatate si medicinaDezvoltare personala
referate stiintaSa fii al doilea inseamna sa fii primul care pierde - Ayrton Senna





Aeronautica Comunicatii Drept Informatica Nutritie Sociologie
Tehnica mecanica

Php


Qdidactic » stiinta & tehnica » informatica » php
Structuri de control in PHP



Structuri de control in PHP


Structuri de control in PHP



Instructiunile compuse sunt formate din mai multe instructiuni simple, separate prin caracterul ';'.


In PHP, instructiunile compuse au urmatoarea sintaxa:





Instructiunile care formeaza instructiunea compusa pot fi de orice tip: orice structura de control, alte instructiuni compuse etc. Asadar un bloc de instructiuni (o instructiune compusa), in PHP, este delimitat de acolade.




A.     Structura if



Sintaxa:


if (conditie)



Una dintre cele mai importante structuri in orice limbaj este cea alternativa.

Folosirea unei astfel de structuri indica faptul ca instructiunea se va executa daca si numai daca valoarea expresiei conditie (eventual dupa conversia la tipul boolean) este true.






B.     Constructia if - else


Sintaxa este:


if (conditie)


else



In constructia de tipul if - else daca valoarea expresiei conditie este „false” se executa instructiunea „instructiune #2”.




C.     Constructia elseif


In PHP se pot folosi structuri alternative imbricate in diferite scopuri.


Sintaxa:


if (conditie #1) instructiune #1

elseif (conditie #2) instructiune #2

else

elseif (conditie #n) instructiune #n

else instructiune #n+1

Limbajul PHP permite folosirea unei prescurtari si anume constructia elseif. Practic, aceasta inlocuieste un else urmat de un if. Folosind aceasta structura, codul anterior poate fi scris astfel:


if (conditie #1) instructiune #1

elseif (conditie #2) instructiune #2

elseif

elseif (conditie #n) instruciune #n

else instructiune #n+1


Pentru a executa mai multe instructiuni cand este indeplinita o anumita conditie, atunci ar trebui sa folosim instructiunile compuse.


Sintaxe alternative:


if (conditie):

instructiune #1

instructiune #2

instructiune #n

endif


Practic, pentru orice structura de control PHP, putem inlocui acolada deschisa prin caracterul ':' si acolada inchisa printr-un cuvant cheie obtinut prin adaugarea prefixului end la cuvantul cheie care indica structura de control. Trebuie observat faptul ca else si elseif nu sunt structuri, ele fiind simple constructii folosite in cadrul structurii if. Din acest motiv, nu se poate scrie niciodata endelse sau endelseif, ci doar endif-uri. Asadar, sintaxa alternativa pentru o structura if in care se folosesc constructii else si elseif este urmatoarea:


if (conditie #1)

grup instructiuni #1


elseif (conditie #2)

grup instructiuni #2

elseif

elseif (conditie #n)

grup instructiuni #n

else grup instructiuni #n+1

endif;









D.     Structura while


Majoritatea script-urilor PHP vor contine cicluri. Pentru a folosi o bucla anterior conditionata vom utiliza structura while.


Sintaxa este:


while (conditie)



Efectul acestei structuri este executarea instructiunii atat timp cat valoarea expresiei conditie (eventual dupa conversia la tipul boolean) este true. Trebuie observat faptul ca este posibil ca instructiunea sa nu fie executata niciodata. Si pentru aceasta structura avem la dispozitie o sintaxa alternativa si anume:


while (conditie):

grup instructiuni

endwhile;




E.     Structura do – while


Uneori, dorim sa folosim bucle posterior conditionate. In PHP putem folosi bucle posterior conditionate cu ajutorul structurii do - while a carei sintaxa este:


do


while (conditie);


Singura diferenta fata de structura while este faptul ca valoarea conditiei este determinata, de fiecare data, dupa executarea instructiuniilor. Ca urmare, instructiunile vor fi executate cel putin o data. Nu exista o sintaxa alternativa pentru aceasta structura.




F.      Structura for


O alternativa cu o functionalitate mai ridicata pentru utilizarea buclelor este structura repetitiva for:


Sintaxa:


for (expresie #1; expresie #2; expresie #3)

instructiune

Prima expresie este evaluata o singura data, inainte de inceperea executiei ciclului. Instructiunea este executata cat timp cea de-a doua expresie are valoarea true. De fiecare data, dupa executarea instructiunii, este evaluata cea de-a treia expresie. Oricare dintre cele trei expresii poate lipsi; in cazul in care o expresie lipseste, se considera ca ea are valoarea true.


Sintaxa alternativa:


for (expresie #1; expresie #2; expresie #3):

instructiune

endfor;




G.    Structura foreach


Aceasta structura poate fi folosita pentru a realiza o iteratie printre toate elementele unui vector. Asadar, ea nu poate fi folosita decat impreuna cu vectorii; utilizarea sa asupra unei variabile de alt tip duce la aparitia de erori.


Sintaxa 1 :


foreach (expresie_vectoriala as $valoare)

instructiune

sau


Sintaxa 2:


foreach (expresie_vectoriala as $cheie => $valoare)

instructiune


Daca se utilizeaza prima varianta, atunci la fiecare iteratie valoarea elementului curent este atribuita variabilei $valoare si apoi se trece la elementul urmator (a carui valoare va fi atribuita variabilei la urmatoarea iteratie). Executia ciclului se incheie in momentul in care nu mai exista alte elemente in vector. Singura diferenta care apare in cazul utilizarii celei de-a doua variante este faptul ca la fiecare iteratie valoarea cheii elementului curent este atribuita variabilei $cheie.




H.    Structura switch


In anumite cazuri trebuie sa efectuam anumite operatii in functie de anumite valori ale unei expresii. O solutie ar fi folosirea unor structuri if imbricate sau a uneia singure in care apar mai multe constructii elseif.

Sa presupunem ca o anumita variabila poate avea cinci valori distincte si pentru fiecare valoare trebuie executata o anumita instructiune. Daca folosim structura if, secventa de cod va fi urmatoarea:


if ($variabila == valoare #1)

instructiune #1

elseif ($variabila == valoare #2)

instructiune #2

elseif ($variabila == valoare #3)

instructiune #3

elseif ($variabila == valoare #4)

instructiune #4

else

instructiune #5


Folosind structura switch, secventa echivalenta este:


swich ($variabila)


Sintaxa generala a structurii switch:


switch (expresie)


Pentru inceput se determina valoarea expresiei si apoi se verifica daca aceasta apare ca valoare pentru una dintre constructiile case. In caz afirmativ, toate instructiunile incepand cu cea corespunzatoare valorii respective (pana la sfarsitul blocului swich) vor fi executate. Executia acestor instructiuni poate fi intrerupta daca este folosita instructiunea break, care va fi prezentata mai jos. Daca valoarea expresiei nu corespunde nici uneia dintre valorile corespunzatoare constructiilor case, se executa instructiunile corespunzatoare constructiei default. Daca aceasta lipseste, atunci nu se executa nici o instructiune. Trebuie precizat faptul ca valorile corespunzatoare constructiilor case pot fi numere intregi, numere reale sau siruri de caractere; nu pot fi utilizate obiecte sau vectori.




I.       Instructiunea break


Aceasta instructiune poate fi folosita pentru a intrerupe fortat executia unui ciclu sau a secventei de instructiuni corespunzatoare unei structuri switch. Instructiunea poate fi urmata de un argument care indica numarul de structuri imbricate a caror executie se incheie. Valoarea implicita este 1, deci se intrerupe executia unei singure structuri. Urmatoarea secventa de cod PHP realizeaza parcurgerea elementelor unui vector de numere intregi pana in momentul in care se intalneste un numar negativ.

Instructiunea break poate fi utilizata pentru intreruperea executiei secventelor de instructiuni corespunzatoare structurilor for, foreach, while, do - while si switch.




J.       Instructiunea continue


Aceasta instructiune este folosita pentru a intrerupe executia secventei de instructiuni din interiorul unui ciclu si trecerea la urmatoarea iteratie. In cazul instructiunii for, inainte de urmatoarea iteratie se evalueaza (executa) expresia de incrementare (expresia #3 din sintaxa generala). La fel ca si in cazul instructiunii break, poate aparea un argument care indica numarul structurilor imbricate asupra carora are efect.




K.     Alte structuri PHP


Structurile include, require, include_once si require_once pot fi utilizate pentru a 'insera' anumite instructiuni care sunt pastrate intr-un alt fisier (document). Interpretorul PHP considera ca secvensa din fisierul inserat se afla in fisierul din care s-a 'comandat' inserarea in pozitia in care apare structura de inserare.

O alta structura este declare care permite crearea unor directive in executie.

Functiile PHP trebuie sa utilizeze instructiunea return pentru a furniza un rezultat.








Contact |- ia legatura cu noi -| contact
Adauga document |- pune-ti documente online -| adauga-document
Termeni & conditii de utilizare |- politica de cookies si de confidentialitate -| termeni
Copyright © |- 2024 - Toate drepturile rezervate -| copyright

stiinta

Php



Access
Autocad
Baze de date
C
Calculatoare
Catia
Excel
Foxpro
Grafica design
Html
Internet
Java
Linux
Mathcad
Matlab
Oracle
Outlook
Photoshop
Php
Powerpoint
Retele calculatoare
Sql
Windows
Word

Esee pe aceeasi tema


Wamp Server
Structuri de control in PHP



Ramai informat
Informatia de care ai nevoie
Acces nelimitat la mii de documente, referate, lucrari. Online e mai simplu.

Contribuie si tu!
Adauga online proiectul sau referatul tau.