Što je PHP ?
Osnove sintakse
Podržani tipovi
Varijable
Klase i objekti
Kontrolne strukture
Rad s mySQL bazom
Zaključak
6. Kontrolne strukture

6.1. IF

IF kontrolna struktura je jedna od najvažnijih u mnogim programskim jezicima pa tako i u PHP-u. Sintaksa je vrlo slična C-u.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php


if ($a > $b) {
print "a je veci nego b";
$b = $a;
}


?>

</body>
</html>

NAPOMENA: Ako imamo samo jednu naredbu za izvršiti u IF bloku, mozemo izostaviti vitičaste zagrade, iako zbog lakše čitljivosti programa to nije preporučljivo.


6.2. ELSE

često bi htjeli izvršiti neku naredbu ili skup naredbi ako je uvjet ispunjen, a drugi skup naredbi ako uvjet nije ispunjen. Upravo zbog toga je ELSE kontrolna struktura.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

if ($a > $b) {
print "a je veci b";
} else {
print "a NIJE veci od b";
}

?>

</body>
</html>

 

6.3. ELSEIF

elseif, kao sto i ime kaže je kombinacija if i else kontrolnih struktura. Kao i else, elseif proširuje if strukturu tako da se može provjeriti više uvjeta, ako prvi nije ispunjen. elseif za razliku od else ce se izvršiti samo ako se njegov uvjet evaluira kao istinit.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

if ($a > $b) {
print "a je veci od b";
} elseif ($a == $b) {
print "a je jednak b";
} else {
print "a je manji od b";
}

?>

</body>
</html>

 

6.4. WHILE

While petlje su najjednostavnije petlje u PHP-u. Tijelo petlje se izvršava dok god je uvjet while-a ispunjen.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

$i = 1;
while ($i <= 10) {
print $i++;
//uvecanje se izvodi tek nakon ispisa
}

?>

</body>
</html>

 

6.5. DO..WHILE

do..while petlje su vrlo slične while petljama, jedina je razlika, sto će se do..while petlja sigurno izvesti jedan puta, neovisno o tome da li je uvjet ispunjen ili nije.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

$i = 0;
do {
print $i;
} while ($i>0);

?>

</body>
</html>

U gornjem primjeru će se petlja izvrsiti bar jednom, odnosno ispisati će "0" iako uvjet u zagradama nije ispunjen !

6.6. FOR

for petlje su najsloženije petlje u PHP-u. Sintaksa je sljedeća:

for (expr1; expr2; expr3) {
statement1;
.
.
statementN;
}

expr1 se bezuvjetno evaluira jedan put na početku petlje.
Na početku svake iteracije expr2 se evaluira. Ako se evaluira u TRUE, petlja se nastavlja i naredbe unutar for bloka se izvršavaju. Ako se evaluira u FALSE, petlja se prekida.
Na kraju svake iteracije se evaluira expr3.


6.7. FOREACH

PHP 4 uključuje foreach strukturu. Ovo nam daje mogućnost jednostavnog iteriranja po svim stavkama polja.

Primjer:

foreach(array_expression as $value) statement

Petlja se vrti kroz polje array_expression i u svakoj iteraciji vrijednost elementa polja stavlja u $value varijablu.

Primjer:

foreach ($arr as $value) {
echo "Value: $value<br>\n";
}


6.8. BREAK

break prekida izvođenje trenutne for, while ili switch structure;

6.9. CONTINUE

continue se koristi u petljama da se preskoči ostatak trenutne iteracije petlje i da se izvođenje nastavi na početku nove iteracije petlje.

6.10. SWITCH

switch je sličan seriji if-ova na istom izrazu. U puno slučajeva, želimo varijablu usporediti s puno vrijednosti i ovisno o odgovarajućoj vrijednosti, poduzeti određene akcije. Upravo tu nam je switch najpraktičniji...

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

switch ($i) {
case 0:
print "i equals 0";
break;
case 1:
print "i equals 1";
break;
case 2:
print "i equals 2";
break;
}

?>

</body>
</html>

Vrlo je bitno staviti break na kraju svakog case bloka, jer ako ne stavimo break, izvode se svi blokovi koji slijede... Npr.da je $i=0 i da nema breakova ispis bi bio sljedeći:

i equals 0
i equals 1
i equals 2


Poseban slučaj case-a je default. On hvata sve što ne odgovara prethodnim uvjetima i mora biti zadnji od svih case izraza.

Primjer:

<html>
<head>
<title>Primjer ugradjenog koda</title>
</head>
<body>

<?php

switch ($i) {
case 0:
print "i equals 0";
break;
case 1:
print "i equals 1";
break;
case 2:
print "i equals 2";
break;
default:
print "i is not equal to 0, 1 or 2";
}

?>

</body>
</html>

Prethodna Sljedeća