Instructiuni Repetitive

postat acum 2 ani de Stefanescu Mihai in categorie PHP

Instructiunile repetitive sunt folosite atunci cand dorim executia repetata a unei portiuni de cod, in mod controlat:

  • Pana cand o conditie este indeplinita sau nu mai este adevarata (TRUE).
  • De un anumit numar de ori

Avem urmatoarele tipuri de instructiuni:

  • for – se repeta de un anumit numar de ori
  • while – se repeta pana cand o anumita conditie este adevarata
  • do…while – se repeta pana cand o anumita conditie este adevarata
  • foreach – ruleaza pentru fiecare element al unui array

Instructiunea for

Instructiunea for este mai complexa si cuprinde 3 parti.

for (initializare; conditie; incrementare){
  Codeul ce va fi executat in mod repetat;
}

Initializarea este folosita pentru a seta valoarea de start a contorului (setam o variabila). Apoi punem o conditie si in ultimul rand setam operatie care se va executa dupa fiecare repetitie.
Exemplu:

for( $i=0; $i<5; $i++ ){
	echo $i."<br/>";
}

Rezultatul va fi acesta:

1
2
3
4
5

Instructiunea While

Acest tip de instructiune se repeta atat timp cat o expresie data este adevarata.

$i = 0;
while($i < 3){
   echo $i."<br/>";
   $i++;
}

Rezultatul:

1
2

3

Instructiunea Do…While

Acest tip de instructiune va executa un bloc de cod cel putin o data, iar apoi se va repeta de cate ori este necesar pana cand conditia devine adevarata.

$i = 0;
do
{
  $i++;
}while( $i < 4 );

Rezultatul:

1
2

3

4

Instructiunea foreach

Instructiunea foreach este folosita pentru a itera un array.

$a = array('a', 'b', 'c');
foreach($a as $litera){
    echo $litera;
}

Rezultatul:

a

b

c

Instructiunea break

Instructiunea break este folosita pentru a termina executarea unei instructiuni repetitive permanent.

Aceasta instructiune va fi situata in interiorul blocului cu codul de executat.

$i = 0;
while( $i < 10)
{
   $i++;
   if( $i == 3 ){
       break;
   }
}

Aceasta instructiune se va opri cand $i ajunge sa aiba valoarea 3.

Instructiunea Continue

Instructiunea continue este similara cu instructiunea break, doar ca in timp ce break iese complet din instructiunea repetitiva, continue va sari decat peste iteratia curenta.

$array = array( 1, 2, 3, 4, 5);
foreach( $array as $value )
{
  if( $value == 3 )continue;
  echo $value."<br />";
}

Rezultatul:

1

2

4

5

Sunt un tanar programator din Bucuresti ce lucreaza in PHP/Mysql (MySqli/PDO), Laravel, CodeIgniter, MySQL, PostgreSQL, Wordpress, HTML5/CSS3, Sass, Photoshop si multe altele.
Google+ Community Facebook Group
Acest articol a fost mutat de pe vechea platforma.
Pentru orice eroare aparuta la mutare va rog sa ma contactati!