PHP are doua tipuri de sctructuri de control, cele conditionale si cele repetitive, ,mai jos o sa va prezint cat
mai detaliat dar usor de inteles aceste structuri si vom incepe cu cele conditionale:
1. Instructiunea if
Forma instructiuni if este urmatoarea
<?php if(conditie){ expresia 1; //daca e adevarata conditia } else{ expresia 2; //daca este falsa conditia } ?>
Am mai folosit instructiunea if in tutotialul Primii pasi in PHP. Aceasta instructiune se foloseste in cazul in care dorim sa verificam valoarea de adevar a unei conditii si in functie de asta sa mergem pe ramura de adevar sau fals.
Obs.Nu este obligatoriu ca instructiunea if sa aiba si ramura else( else este si ea o instructiune).
2. Instructiunea elseif
Forma instructiuni este urmatoarea
<?php $a=0; $b=1; if($a==$b){ echo '$a==$b'; // va returna in caz ca $a=$b } elseif($a>$b){ echo '$a>$b'; // va returna in caz ca $a>$b } else{ echo '$a<$b'; // va returna in caz ca $a<$b } ?>
Instructiunea elseif se foloseste pentru a testa mai multe conditii in acceasi structura dupa cum cred ca ati observat si mai sus.
Instructiunea if are si o structura alternativa fara a folsi {} pentru a delima blocul expresiei
<?php if (conditie) : echo 'Structura alternativa'; echo '<br>'; endif; ?>
3. Instructiunea switch
Instructiunea switch se aseamana cu instructiunea elseif, doar ca instructiunea switch este mult mai eleganta, forma instructiuni este urmatoarea:
<?php $a=1; switch($a){ case 1 : echo 'primul caz'; break; case 'bau' : echo 'un alt caz'; break; case 4 : echo 'ultimul caz'; break; default: echo '$a nu corespune nici unui caz'; } ?>
Fiecare caz al switch-ului se inchide prin break, daca nu o sa folositi break o sa meraga pana intalneste un break sau }. cu alte cuvinte trece din caz in caz.
Acestea 3 sunt structurile conditionale, acum sa trecem la cele repetitive:
1. Instructiunea while
Instructiunea while poarta numele de instructiune repetitiva cu test initial " cat timp <conditie>(true) executa instructiune". While este probabil una din cele mai folosite instructiuni repetitive.
<?php $nr=0; while ($nr<10) { echo $nr.'<br>'; //va afisa toate cifrele de la 0 la 9 $nr++; } ?>
2. Instructiunea do while
Intre while si do while singura diferenta este ca daca conditia nu este indeplinita blocul de sub DO se executa, cu alte cuvinte blocul de sub Do se executa cel putin o data, forma instructiuniei este:
<?php $nr = 5; do { echo $nr; //afiseaza 5 cu toate ca nu a fost indelinita coditia $nr++; } while($a<3); ?>
3. Instructiunea for
Instructiunea for este o instructiune while mult mai conpacta, instructiunea for arata astfel:
<?php <span style="font-family: Arial, Verdana, sans-serif;">//for(valaore minima;valaore maxiama; valoare urmatoare<<cu incrementare sau decremantare>>)</span> for($i=0;$i<10;$i++) { echo $i.'<br>'; va afisa cifrele de la 0 la 9 } ?>
4. Instructiunea foreach
Instructiunea foreach este asemnatoare isntructiuni for doar ca este dedicata tablourilor, mai jos o sa va arat cum arata si cum se foloseste instructiunea foreach:
<?php foreach($array as $key=>$val){ //putem renunta la $key adica foreach ( $tablou as $val) echo '$array['.$key.']='.$val.'<br>'; } //output //$array[0]=Ionel //$array[1]=Ionica //$array[2]=Ionela ?>
5. Structura break
In momentul in care doriti sa opriti si sa parasiti o bucla (while,for,foreach,switch) puteti folosi instructiunea break, exemplul este mai sus la instructiunea switch.
6. Structura continue
Cu ajutorul lui continue putem omite o parte a unei bucle si sa continue executia acesteia dintr-o conditie din interiorul buclei.
<?php for($i=0;$i<5;$i++){ if($i==2) continue echo $i; } //bucla de mai sus va returna 2 ?>
7. Structura return
Instructiunea return se foloseste in cadrul unei functii pentru a termina executia unei functii si returnarea unui rezultat.
Despre insructiunea return vorbim in tutorialul viitor despre funcii, unde este relevanta.
8. Instructiunile include si require
Ambele instructiuni se folosesc pentru a include un fisier in alt fisier, diferenta intre ele se face pe baza inexistentei fisierului, require introarce o eraore fatala pe cand include doar un warnig si executia continua.
Ambele funcii au cate o derivata include_once si require_once care se folosesc oentru a include o singura data, exemplu:
<?php include 'fiser.php'; include 'fiser.php'; //in acest caz fisier.php este inclus de doua ori include_once 'fisier.php'; include_once 'fisier.php'; //in acest caz fisier.php este inclus o singura data ?>
9. Instructiunea goto
Este o instructiune care ne da posibilitatea de a face salt de la un bloc la altul ( orice programator o sa va spuna ca un programator "prost" va folosi goto, pe cand unul bun, nu. Mai jos o sa dau un exemplu pentru goto:
<?php goto a; echo 'Foo'; a: echo 'Bar'; ?> //va returna Bar;
Cam atat pentru astazi, acest tutorial a fost creat pentru micul-programtor.ro si este protejat de copyright-ul acestuia, astfel incat nu se poate posta in alta parte decat prin precizarea sursei si a autorului.