Branching (php de bază - lecție din curs)

Ramificație în programare, variabilitate program, condiții, selecție

Branching (php de bază - lecție din curs)

Poate că nici un scenariu complicat nu poate fi imaginat fără ramificație. Acestea vă permit să schimbați logica execuției programului în funcție de datele de intrare. În PHP, există un grup de instrucțiuni condiționale, care ajută la fragmentarea codului programului.







Pentru o mai bună înțelegere a conceptului de ramificare, aruncăm o privire la cele două diagrame de mai jos:

Branching (php de bază - lecție din curs)

Diagrama bloc, situată pe partea stângă. nu are operatori de ramificare. Un program care rulează în conformitate cu această schemă va trece întotdeauna în mod constant prin trei blocuri de operatori: Blocul operatorilor 1, Blocul operatorilor 2, Blocul operatorilor 3.

Acum, aruncați o privire asupra diagramei potrivite. Are o afirmație condiționată care oferă două alternative la execuție. Dacă condiția este îndeplinită, primul bloc de declarații va fi procesat, dacă condiția nu este îndeplinită, al doilea bloc de operatori va funcționa. Astfel, un astfel de program are două variante de execuție: bloc de operatori 1, bloc de operatori 3. Sau bloc de operatori 2, bloc de operatori 3.

Capacitatea de a determina alternativa progresului programului este un instrument de programare puternic.

În cea mai simplă formă, utilizarea instrucțiunii if arată astfel:
dacă (condiție) acțiune;
O condiție este orice expresie cu o valoare booleană (adevărată sau falsă). Acțiunea este efectuată atunci când condiția este adevărată (adică adevărată). Ca urmare a testării unei condiții, mai mulți operatori pot fi executați imediat, apoi formează un bloc, care trebuie să fie închis în brațe:

Dacă comparăm acest scenariu cu diagrama bloc dreapta din figura de mai sus, atunci blocul operator 1 este următorul:
acțiune1;
action2;
Blocul de operatori 2 este gol, precum și blocul de operatori 3.

Adesea, este necesar să se indice acțiunile nu numai atunci când condiția este adevărată, ci și atunci când este falsă. În acest caz, se folosește alt cuvânt cheie.

Acest scenariu corespunde diagramei bloc dreapta din figura de mai sus, dacă excludem blocul de operatori 3 din acesta.







Cuvantul elseif va permite sa verificati conditiile suplimentare daca conditiile anterioare sunt false. Luați în considerare următorul exemplu:

Acest exemplu poate fi reprezentat ca parte a graficului:

Branching (php de bază - lecție din curs)

Să presupunem că condițiile 1 și 2 sunt complexe. iar condiția 3 este adevărată. În acest caz, interpretul PHP verifică mai întâi condiția1. asigurați-vă că este falsă, apoi Condition2. După aceasta, va ajunge la condiția 3, va vedea că este adevărat și va intra în al treilea bloc de operatori. După aceasta, scenariul va continua să curgă după toată această construcție.

Și ce se întâmplă dacă sunt adevărate câteva condiții, de exemplu, Condiția 2 și Condiția 3. În acest caz, va fi executat doar un singur bloc de operatori ai primei condiții reale. În cazul nostru, dacă condiția 2 și condiția 3 sunt adevărate. Numai blocul de operatori2 va fi executat. După aceea, interpretul va continua să execute instrucțiunile care urmează bracketului de închidere> al ultimului bloc. Pentru a înțelege mai bine principiul muncii, scrieți un mic script din exemplul de mai jos:

Uită-te la rezultat, schimbând valoarea $ a. Blocurile de cod pentru instrucțiunile elseif și else se execută numai atunci când toate condițiile testate anterior sunt false.

Operatorul ternar are trei operanzi (de aici și numele). Se pare ca aceasta:
Variabila = condiție. VALUE1. valoare2;
Dacă valoarea Stare este adevărată, atunci variabila este setată la Value1, altfel Value2. exemplu:

Scrieți acest mic script și asigurați-vă că variabila $ a în acest caz este atribuită șirului "1 mai puțin de 2", deoarece condiția (1 <2 ) истинно. Теперь попробуйте поменять знак с " <" на "> "și verificați rezultatul.

Operatorul ternar a apărut pentru prima dată în limba C. Vă permite să includeți o verificare a condiției în operația de atribuire. Aceasta este o oportunitate frumoasă, făcând codul laconic. Utilizați operatorul ternar!

Totuși, aveți grijă să cuibăreți astfel de operatori, deoarece acest lucru reduce foarte mult lizibilitatea codului.

Operatorul de comutare calculează valoarea expresiei specificate și o compară cu opțiunile propuse. În cazul unui meci, se execută blocul de cod corespunzător. Instrumentul comutator are următoarea sintaxă:

Mai întâi, comutatorul calculează valoarea expresiei. apoi o compară cu valoarea fiecărei etichete (Value1, Value2). Imediat ce este detectată o potrivire, se execută blocul corespunzător de operatori.

Rețineți ruperea cuvintelor cheie la sfârșitul fiecărui bloc de cazuri. pauză indică faptul că execuția instrucțiunilor din blocul de comutare este completă și trebuie să mergeți la executarea instrucțiunilor după întreaga blocare a comutatorului (după bretele). În cazul în care nu există o declarație de pauză la sfârșitul blocului de caz, interpretul va continua să execute declarațiile următoarelor blocuri.

Dacă, după trecerea tuturor etichetelor cazului, meciul nu a avut loc, operatorii din blocul implicit sunt executați. Totuși, acesta este un bloc opțional și poate fi absent. În acest caz, dacă interpretul nu a găsit nici o potrivire, executarea programului va continua de la linia care urmează blocului de comutare. Exemplul de mai jos:

Uneori, o declarație de pauză poate fi folosită intenționat pentru a asigura logica corectă a programului.

O caracteristică a limbajului PHP este că etichetele de caz pot fi simple variabile (nu array sau obiecte). De exemplu, scriptul de mai jos este corect din punctul de vedere al sintaxei limbii.

Operatorul de comutare este utilizat atunci când algoritmul are mai mult de două alternative de execuție. În caz contrar, este logic să folosiți o mulțime de declarații if-else.







Trimiteți-le prietenilor: