Webové technológie
Poznámky:
4. Podmienky
Vetvenie využívame vtedy, keď potrebujeme, aby sa určitý príkaz alebo príkazy vykonal/vykonali iba vtedy, keď je splnená nejaká podmienka.
4.1 Podmienený operátor
výraz1» ? «výraz2» : «výraz3»
Ak je «výraz1» pravdivý, výsledkom je hodnota «výraz2». V opačnom prípade je výsledkom «výraz3».
$x = 7; // priradenie hodnoty do premennej $x
$parnost = $x % 2==0 ? "párne" : "nepárne";
//Vysvetlenie: Ak sa zvyšok čísla $x po delení 2 rovná nule tak do premennej $parnost zapíš "párne", ak nie tak zapíš "nepárne".
echo "Číslo " . $x . " je " . $parnost;
?>
Zobraziť výsledok
4.2 Príkaz IF
IF («výraz») «príkaz»;
Ak je hodnota výrazu v zátvorke rovná logickému TRUE, «príkaz» sa vykoná. V opačnom prípade sa «príkaz» nevykoná.
$d=date("D"); // do premennej $d je priradený aktuálny deň v anglickom skrátenom tvare
if ($d=="Fri") echo "Pekný víkend!"; // ak je piatok vypíš...
?>
Zobraziť výsledok
4.3 Príkaz IF-ELSE
IF («výraz»)
«príkaz 1»;
ELSE
«príkaz 2»;
Ak je hodnota výrazu v zátvorke rovná logickému TRUE, vykoná sa «príkaz 1», ak hodnota výrazu v zátvorke nie je rovná logickému TRUE, vykoná sa «príkaz 2».
$a = 36;
if ($a % 2 == 0 AND $a % 3 == 0)
//Vysvetlenie výrazu: Ak sa zvyšok čísla $a po delení 2 rovná nule a zároveň sa zvyšok čísla $a po delení 3 rovná nule, tak vypíš....
echo "Číslo " . $a . " je delieľné číslom 6";
else //Ak nie tak vypíš...
echo "Číslo " . $a . " nie je deliteľné číslom 6";
//Ak by sme zmenili hodnotu premennej $a napr. na 37 tak by nám vypísalo obsah else....
?>
Zobraziť výsledok
4.4 Príkaz IF-ELSEIF-ELSE
IF («výraz 1»)
«príkaz 1»;
ELSEIF («výraz 2»)
«príkaz 2»;
ELSEIF («výraz 3»)
«príkaz 3»;
...
ELSE
«príkaz N»;
Ak je «výraz 1» pravdivý, vykoná sa «príkaz 1». V opačnom prípade sa testuje pravdivosť «výraz 2».
Ak je «výraz 2» pravdivý, vykoná sa «príkaz 2». Takto sa postupuje všetkými výrazmi sa každým ELSEIF.
Ak nie je žiaden z výrazov za ELSEIF pravdivý, vykoná sa «príkaz N» za časťou ELSE. Časť ELSE je nepovinná.
echo "Momentálne je: " . date("H:m:s") . "<br>";
$cas = date(H, time());
echo "<br><big>";
if ($cas >= 6 && $cas <= 8) {
echo "Prajeme Vám príjemné ráno";
}
elseif ($cas >= 9 && $cas < 12) {
echo "Prajeme Vám príjemné predpoludnie";
}
elseif ($cas == 12) {
echo "Prajeme Vám príjemné poludnie";
}
elseif ($cas >= 13 && $cas <= 17) {
echo "Prajeme vám príjemné popoludnie";
}
elseif ($cas >=18 && $cas <= 21) {
echo "Prajeme Vám príjemný večer";
}
else {
echo "Prajeme Vám dobrú noc!";
}
echo "</big>";
?>
Zobraziť výsledok
Prajeme vám príjemné popoludnie
4.5 Príkaz SWITCH
SWITCH («výraz»)
{
CASE «hotnota 1»;
«príkaz 1.1»;
«príkaz 1.2»;
...
BREAK;
CASE «hotnota 2»;
«príkaz 2.1»;
«príkaz 2.2»;
...
BREAK;
...
DEFAULT:
«príkaz n.1»;
«príkaz n.2»;
...
}
«výraz» sa vyhodnotí a jeho hodnota sa porovnáva s hodnotami uvedenými za časťami CASE.
V prípade zhody sa začnú vykonávať všetky príkazy až kým sa nenarazí na príkaz BREAK alebo
na koniec príkazu SWITCH. Ak by sme v niektorej časti CASE príkazu SWITCH zabudli na
príkaz BREAK, vykonávanie príkazov by pokračovalo aj cez ďalšie bloky CASE. Ak hodnota
«výraz» nie je zhodná so žiadnou hodnotou za CASE, vykoná sa blok príkazov za DEFAULT.