Za razliku od „jednostavne“ sintakse „While“ petlje, „For“ petlja ima najsloลพeniju sintaksu u PHP-u (vrlo sliฤnu C-u). Struktura i sintaksa je ove petlje je sledeฤa:
for (izraz1; izraz2; izraz3)
naredba
Prvi izraz (izraz1) se proverava (izvrลกava) samo jednom (bezuslovno), i to na poฤetku petlje. Na poฤetku svake iteracije proverava se drugi izraz (izraz2). Ukoliko je istinosna vrednost ovog izraza TRUE, petlja se nastavlja i izvrลกava se ugneลพdena instrukcija(e). Ukoliko je vrednost izraza FALSE, prekinuฤe se izvrลกavanje petlje. Takoฤe, na kraju svake iteracije petlje proverava se (izvrลกava se) treฤi izraz (izraz3).
Svaki od nabrojanih izraza moลพe biti „prazan“, tj. ne mora sadrลพati nikakav izraz. Ako je na primer, drugi izraz „prazan“ petlja ฤe se ponavljati nedefinisan broj puta. Moลพda vam ova moguฤnost na prvi pogled nema smisla, ali sve do momenta kada ovu moguฤnost budete upotrebili sa uslovnom instrukcijom „break“. Razmotrite sledeฤi primer:
<?php
/* 1. primer */for ($a = 1; $a <= 10; $a++) {
print $a;
}/* 2. primer */
for ($b = 1;;$b++) {
if ($b > 10) {
break;
}
print $b;
}/* 3. primer */
$c = 1;
for (;;) {
if ($c > 10) {
break;
}
print $c;
$c++;
}/* 4. primer */
for ($d = 1; $d <= 10; print $d, $d++) ;
?>
Od ova ฤetiri primera, prvi je svakako najjasniji. U drugom primeru je prikazan „prazan“ drugi izraz, pa imamo nedefinisan broj iteracija petlje. Ali, tu smo upotrebili „If“ grananje i instrukciju „break“, kojom izlazimo iz petlje (petlja se prekida) kada vrednost varijable „$b“ bude 11 (nakon toga vrลกimo ลกtampanje vrednosti varijable). Treฤi primer je specifiฤan jer su sva tri izraza „prazna“ (nedefinisana). Tako da ฤe se data petlja izvrลกavati u zavisnosti od prirode ugneลพdenih naredbi. PHP naravno, obezbeฤuje i alternativno definisanje „For“ petlje (sa dvotaฤkom):
for (izraz1; izraz2; izraz3):
…naredba; …;
endfor;
Pratite Krstaricu na www.krstarica.com