naslovna
programiranje
HTML
CSS
PHP
MySQL
jQuery
Osnove
Polja
Petlje
Funkcije
Forme

Petlje su izrazi kojima se ostvaruje ponavljanje određene naredbe ili bloka naredbi.

Na taj način nije potrebno više puta napisati naredbe koje se trebaju izvršiti više puta, već ih je dovoljno napisati unutar petlje.


Naredbe će se ponavljati dok je ispunjen određeni logički uvjet.

 

while (uvjet)
{
     naredba1;
     naredba2;
}

 

 

Poslije ključne riječi while u zagradama se piše uvjet ponavljanja.

Nakon njega dolazi tijelo petlje – unutar vitičastih zagrada se navodi naredba ili naredbe koje će se ponavljati dok god uvjet vrijedi.

Kao i kod uvjetnih struktura, moguće je izostaviti vitičaste zagrade ako se radi samo o jednoj naredbi.


Istinitost uvjeta se provjerava svaki put prije nego što se izvrše naredbe iz tijela petlje.

Nakon što uvjet prestane vrijediti, izvršavanje programa se nastavlja od prve naredbe koja slijedi nakon petlje.

Ako uvjet petlje nije bio ispunjen na početku, naredbe u tijelu petlje neće biti izvršene nijednom.


Istinitost uvjeta se može promijeniti kao rezultat izvršavanja naredbi u tijelu petlje, ili zbog nekog vanjskog uzroka.

 

 

Sljedeća petlja izvršit će se 10 puta, zato što nakon 10. izvršavanja uvjet petlje više neće vrijediti:

 

$i = 0;
while($i < 10)
{
     echo $i . " ";
     $i++;
}

 

U gornjem primjeru je najprije stvorena varijabla $i, kojoj je pridruţena početna vrijednost 0. Zatim slijedi petlja čiji je uvjet ponavljanja da je $i manje od 10. Pri svakom krugu petlje (izvršavanju naredbi iz tijela petlje), najprije se ispiše vrijednost varijable $i (zajedno s razmakom), a nakon toga se varijabla $i poveća za 1. Kad se varijabla $i deseti put poveća za 1, njena vrijednost će iznositi 10 i uvjet $i < 10 više neće vrijediti. Zbog toga, naredba za ispis vrijednosti više neće biti izvršena.

 

Moguće je pojavljivanje tzv. beskonačne petlje, slučaja u kojem izvršavanje petlje neće nikada prestati, jer uvjet ponavljanja neće nikada prestati vrijediti.

 

 

Primjer jednostavne beskonačne petlje:

 

while (TRUE)
{
     echo "Petlja se izvršava";
}

 

Ovaj tip petlje je sličan petlji while.

 

Naredbe u tijelu petlje izvršavat će se ako je ispunjen uvjet ponavljanja, s tom razlikom da će se kod petlje do...while izvršiti barem jedanput, čak i ako uvjet nije ispunjen.

Razlog tome je što se uvjet ponavljanja ne provjerava prije izvršavanja naredbi iz tijela petlje, već poslije njega.

 

 

Oblik pisanja petlje do...while je ovakav:

 

do
{
     naredba1;
     naredba2;
} while (uvjet);

 

 

Primjer ispisivanja brojeva od 0 do 9 korištenjem petlje do...while izgledat će ovako:

 

<?php
$i = 0;
do
{
     echo $i . " ";
     $i++;
} while($i < 10);

 

 

Ako obrnemo uvjet ponavljanja petlje tako da sada $i treba biti veći, a ne manji od 10, naredbe iz tijela petlje će se svejedno izvršiti jedanput:

 

$i = 0;
do
{
     echo $i . " ";
     $i++;
} while($i > 10);