headerphoto

Řídicí struktury v PHP

Větvení

Příkaz if slouží k podmíněnému provedení příkazu, pokud je splněna určitá podmínka. Podmínku musíme zadat jako výraz, který vrací logickou hodnotu

if(podmínka )přikaz;

V PHP jsou logické hodnoty reprezentovány jako obyčejné číslo. Nula přitomodpovídá hodnotě false. Toho můžeme využít a podmínku zapsat zkráceně:

if( !$b) $podil=$a/b;
Pokud chceme podmíněně provést více příkazů, uzavřeme je do složených závorek
Příkaz if–else

if (podmínka) příkaz1;
else příkaz2;

Platí-li podmínka, provede se příkaz1, jinak se provede příkaz2. Příkazů může být i více.

Příkaz uvedený za elseif se provede v případě, že není splněna podmínka pro if a zároveň je splněna podmínka za elseif. Částí elseif můžeme použít i několik za sebou. Nakonec můžeme použít i část else, která se provede pouze v případě, že není splněna ani jedna z předchozích podmínek

if (podmínka)
	příkaz1;
elseif (podmínka2)
	příkaz2;
elseif (podmínka3)
	příkaz3;
else
	poslední příkaz;   

Příklad:

<?php
if ($heslo == 'Heslo')
	 { 
	 echo 'Jste přihlášen/a'; 
}
else 
	{ 
echo 'Špatné heslo!!!';
}
?>
<?php
if ($Vek < 10)   echo "prcek";
 elseif ($Vek < 20) echo "teenager";
 elseif ($Vek < 60)  echo "v nejlepších letech:-)";
 elseif ($Vek < 100) echo "prarodič";
 else  echo "někde mezi stovkou a …";
?>
 

Switch

switch (proměnná) {
case "hodnota1" : příkaz1; break;
case "hodnota2" : příkaz2; break;
default : příkaz3;
} 

Nejprve je vyhodnocena proměnná, pak jsou postupně procházeny hodnoty uvedené za klíčovým slovem case, dokud se nenalezne hodnota shodná s hodnotou proměnná. Následně jsou vykonávány příkazy, dokud se nenarazí na příkaz break nebo na konec příkazu switch.

Příklad:

<?php
if ($ok) {
switch ($jaz) {
case 1:echo "Mluvíte jenom česky!";
		break;			
case 2:echo "Mluvíte polsky";
		break;
case 3:echo "Mluvíte anglicky";
		break;
case 4:echo "Mluvíte romsky";
		break;
case 5:echo "Mluvíte italsky";
		break;			
			}
		}
 ?>

Cykly

Použijeme, pokud chceme opakovat určitou stejnou činnost několikráte za sebou (postupně ověřovat data, nebo generovat informace...)

While

Cyklus s testem na začátku, nemusí proběhnout vůbec.

while ( podminka )
     {
	 telo cyklu
	}

Příklad:

<?php
//Sečti  a vypiš čísla od 1 po 10
$i=1;
$s=0;
while ($i<11)
		{
		echo $i."<br>";
		$s=$s+$i;
		$i++;
}
echo "celkovy soucet = ".$s;
?>

Do while

Cyklus s testem na konci, proběhne alespoň jedenkrát.

do
     {
	 telo cyklu
	}
while ( podminka );

Příklad:

<?php
//Sečti a vypiš čísla od 1 po 10
$i=1;
$s=0;
do		{
		echo $i."<br>";
		$s=$s+$i;
		$i++;
} while ($i<11);

echo "celkovy soucet = ".$s;
?>

For

Cyklus se známým počtem opakování

for (inicializace; podmínka; výraz)
     {  telo cyklu }

Příklad:

<?php
//Sečti a vypiš čísla od 1 po 10
$s=0;
for($i=1;$i<11;$i++)
{
	echo $i."<br>";
	$s=$s+$i;
}
echo "celkovy soucet = ".$s;
?>
 

Foreach

Příkaz foreach prochází pole jen přes jeden rozměr. Pokud chceme zpracovat všechny prvky vícerozměrného pole, musíme do sebe foreach několikrát vnořit.

$pole = array(...);
foreach ($pole as $hodnota)
{
  echo $hodnota;
}

Příklad:

<?php
//Vypiš pole
$p=array(1,2,3,55);
foreach($p as $h)
echo "$h <br >";
?>
Design downloaded from Free Templates - your source for free web templates