Kurs PHP czΩ╢µ 2


Instrukcja warunkowa if/else

Czasem chcemy, ┐eby fragment kodu wykona│ siΩ tylko pod jakim╢ warunkiem. Stosuje siΩ wtedy instrukcjΩ if:

if($a>$b)
echo("$a jest wiΩksze od $b");

Je┐eli warto╢µ $a jest wiΩksza od $b wy╢wietli siΩ napis "$a jest wiΩksze od $b". Warunek jest spe│niony, je┐eli wyra┐enie w nawiasie ma warto╢µ r≤┐n▒ od zera. Je┐eli bΩdzie to np. pusta zmienna warunek nie jest spe│niony. Polecenie w nastΩpnej lini zostanie wykonane, je┐eli warunek jest spe│niony. Aby warunek obj▒│ kilka polece±, stosuje siΩ nawiasy klamrowe:

if($a>$b)
{
echo("$a jest wiΩksze od $b");
$a++;
}

Je┐eli chcemy wykonaµ inny fragment kodu gdy warunek nie jest spe│niony, stosujemy instrukcjΩ else:

if($a>$b)
echo("$a jest wiΩksze od $b");
else
echo("$a jest mniejsze lubr≤wne $b");

Aby uzyskaµ bardziej z│o┐ony warunek mo┐na zastosowaµ operatory logiczne i (&) oraz lub (|):

if($a>$b|$a<2)
echo("$a jest wiΩksze od $b, lub mniejsze od 2");

Operatory logiczne

Aby po│▒czyµ kilka warunk≤w mo┐na u┐yµ specjalnych operator≤w logicznych. S▒ to:

|| - alternatywa (lub)
&& - koniunkcja (i)
! - negacja (zaprzeczenie)

Przyk│ad:

$a=1;
$a=3;

if($a==1&&$b==2) echo("A");
if($a==1||$b==2) echo("B");
if(!($a==1&&$b==2)) echo("C");

Wynikiem tego skryptu bΩdzie napis "BC". Operator zaprzeczenia mo┐na te┐ dla wygody po│▒czyµ z operatorem por≤wnania, np:

$a=1;
if($a!=2) echo("Warunek spe│niony");

PΩtla while

Aby fragment kodu wykonaµ wiele razy stosuje siΩ pΩtle. PHP obs│uguje 3 rodzaje pΩtli: while, do..while i for. Najprostsz▒ z nich jest pΩtla while:

$a=0;
while($a<5)
{
echo("$a ");
$a++;
}

W pΩtli while najpierw sprawdzany jest warunek (w tym wypadku $a<5). Je┐eli jest spe│niony, pΩtla wykonuje siΩ i wraca do sprawdzenia warunku. Je┐eli warunek nie jest spe│niony, wykonanie pΩtli ko±czy siΩ. Powy┐szy skrypt wy╢wietli liczby od 0 do 4.

PΩtla do..while

$a=0;
do
{
echo("$a ");
$a++;
}while($a<5);

PΩtla do..while r≤┐ni siΩ od pΩtli shile tym, ┐e najpierw wykonuje siΩ pΩtla, a dopiero potem sprawdzany jest warunek. Oznacza to, ┐e pΩtla zawsze wykona siΩ co najmniej 1 raz. Powy┐szy skrypt zadzia│a tak samo jak poprzedni. R≤┐nica bΩdzie widoczna w poni┐szych pΩtlach:

$a=6;
do
{
echo("$a ");
$a++;
}while($a<5); /* ta pΩtla wykona siΩ 1 raz */

$a=6;
while($a<5)
{
echo("$a ");
$a++;
} /* instrukcje w tej pΩtli nie zostan▒ wykonane */

PΩtla for

Wykonanie pΩtli for:

for($a=0;$a<5;$a++)
{
echo("$a ");
}

Odpowiada wykonaniu pΩtli:

$a=0;
while($a<5)
{
echo($a);
$a++;
}

Mo┐na to te┐ zapisaµ jako

for($a=0;$a<5;echo("$a "), $a++);

Instrukcje break i continue

Wykonanie pΩtli mo┐na w ka┐dym momencie zako±czyµ. S│u┐y do tego instrukcja break:

$a=0;
while($a<10)
{
$a++;
if($a==3)
break;
}

Ta pΩtla nie wykona siΩ 10 razy - gdy $a osi▒gnie warto╢µ 3, wykonanie pΩtli zostanie przerwane. Mo┐na te┐ przej╢µ do nastΩpnego powt≤rzenia - s│u┐y do tego instrukcja continue:

$a=0;
while($a<10)
{
$a++;
if($a==3)
continue;
echo("aaa"); /* ta instrukcja wykona
siΩ tylko gdy $a nie jest r≤wne 3 */
}

Instrukcja switch

Czasem zmienna mo┐e mieµ jedn▒ z kilku warto╢ci, w zale┐no╢ci odkt≤rych nale┐y podj▒µ odpowiedni▒ akcjΩ. Mo┐na to zrobiµ stosuj▒c instrukcjΩ if:

if($a==1)
{
echo("a jest r≤wne 1");
}

if($a==3)
{
echo("a jest r≤wne 3");
}

if($a==11)
{
echo("a jest r≤wne 11");
}

Du┐o wygodniejsze jest zastosowanie instrukcji switch:

switch($a)
{
case 1:
echo("a jest r≤wne 1");
break;

case 3:
echo("a jest r≤wne 3");
break;

case 11:
echo("a jest r≤wne 11");
break;
}


ZaczerpniΩto ze strony http://ygreg.and.pl



[ Poprzednia strona ]     [ NastΩpna strona ]

______________________________ 030 ______________________________

Copyrigt(C) '2001 Maciej Kunowski