PHP – „While“ petlja

Nakon „If“ strukture prelazimo na obradu najjednostavnijeg tipa petlji u PHP-u, a to je „While“ petlja. Struktura i sintaksa u PHP-u je vrlo sliฤna sintaksi ove petlje u programskom jeziku C:


while (izraz)
naredbe

Semantika same petlje je vrlo jednostavna, ona „kaลพe“ PHP-u da ponavlja izvrลกavanje ugraฤ‘enih naredbi, sve dok je ispunjen uslov, tj. dok je vrednost „izraza“ TRUE. Vrednost izraza se proverava samo na svakom poฤetku ponavljanja petlje, tako da ako se ova vrednost promeni tokom izvrลกavanja ugneลพdenih instrukcija, izvrลกenje se neฤ‡e prekinuti do kraja date iteracije. U sluฤaju da je vrednost „izraz“-a FALSE, neฤ‡e se izvrลกiti ugneลพdene naredbe, a izvrลกenje programa ฤ‡e se prebaciti na sledeฤ‡u instrukciju koja dolazi nakon petlje.

Kao i kod „IF“ grananja, i ovde moลพete grupisati viลกe instrukcija unutar jedne „While“ petlje, i to uz pomoฤ‡ vitiฤastih zagrada, ili uz koriลกฤ‡enje alternativne sintakse:


while (izraz) :
…naredbe…
endwhile;

U sledeฤ‡im redovima moลพete videti dve „While“ petlje, napisane na dva naฤina, koje „ลกtampaju“ cifre od 1 do 10:


<?php
/* 1. primer */

$a= 1;
while ($a <= 10) {
print $a++;
}

/* 2. primer */

$a = 1;
while ($i <= 10):
print $a;
$a++;
endwhile;

?>


Kao ลกto vidite, ovde smo upotrebili inkrementalni operator (++) koji uveฤ‡ava vrednost varijable „$a“, i to nakon njenog ลกtampanja.

Sliฤna prethodnoj „While“ petlji je „Do…While“ petlja, a razlika je samo u poziciji proveravanja „izraz“-a. Kod ove petlje provera istinosne vrednosti izraza se vrลกi na kraju petlje svake iteracije. Glavna razlika je u tome ลกto ฤ‡e se kod ove druge petlje (do…while) prva iteracija svakako izvrลกiti, za razliku od „While“ gde se moลพda neฤ‡e izvrลกiti ni jedna iteracija (u sluฤaju da je vrednost izraza FALSE).


<?php
$a = 0;
do {
print $a;
} while ($a>0);
?>

Prethodna petlja ฤ‡e se izvrลกiti taฤno jedanput, jer se nakon prve iteracije proverava izraz ($a>0), koji ฤ‡e imati vrednost FALSE. Zbog ove vrednosti izraza petlja ฤ‡e prekinuti dalje izvrลกavanje.

Pratite Krstaricu na www.krstarica.com