Menu
Strona główna
Hacking
Programowanie
Telefonia Komórkowa
Kody do Gier
Linux
Dlaczego?
Programowanie w Delphi
Mapa strony
 Programy
Systemy
Artykuły PDF

Security

Skanery
Sniffery
Security

Windows

Użytkowe
Przegl±darki graficzne
Kodeki
Narzędzia plikowe
Narzędzia dyskowe
Narzędzia systemowe
Sterowniki
Szyfrowanie danych
Zarz±dzanie hasłami
Zarz±dzanie rejestrem
£aty i Patche
Zarz±dzanie pamięci±
Synchronizacja czasu
Nagrywanie płyt
Free Antivirus (Darmowe Antyvirusy)
Sterowniki
Obróbka d¼więku
Edycja wideo

Internetowe

Bezpieczeñstwo
Programy P2P
Komunikatory
Dodatki do przegl±darek
Klienty poczty elektronicznej
Narzędzia Antyspamowe
Przegl±darki grup dyskusyjnych
Przegl±darki Offline
Serwery poczty elektronicznej
Telefonia komórkowa
Wyszukiwarki internetowe
Zdalny dostęp
Cybernianie
Klienty FTP
Narzędzia internetowe
Prywatnośc
Przegl±darki internetowe
Serwery FTP
Serwery WWW
Wspomagacze ści±gania
Zarz±dzanie sieci± lokaln±

Tuning Systemu

Diagnostyka i testowanie
Inne
Rozszerzenia pulpitu
Tapety na pulpit
Tuning Systemu
Ikony
Powłoki
Tuning sprzętu
Wygaszacze ekranu

Programowanie

Kompilatory
Biblioteki i komponenty
Bazy danych
Edytory programistyczne
¦rodowiska programistyczne
Debugery
Tworzenie wersji instalacyjnych

Webmastering

Użytkowe
Kursy

Linux

Użytkowe
Internetowe
Multimedialne

Programy biurowe

Programy dla firm
Pakiety biurowe
Administracja
Edytory tekstu
Grafika prezentacyjna
Kadry i płace
Wspomaganie projektowania
Zarz±dzanie projektami
Bazy danych
Finanse i księgowośc
Handel
Programy ewidencyjne
Zarz±dzanie informacj± osobist± (PIM)
 Download GRY
Pelne Wersje GIER
 Artykuy > Programowanie > Kurs PHP - Struktury kontrolne Cześć 4

1. Instrukcje warunkowe

Instrukcje warunkowe są podstawą każdego języka programowania. Używa się jej do wykonania pewnej instrukcji (lub bloku instrukcji), ale tylko w pewnych okolicznościach - zostanie spełniony określony warunek (lub cały zestaw warunków). Składnia instrukcji warunkowej jest następująca:


<?
if(wyrażenie_warunkowe)
   
instrukcja wykonywana jeśli spełniony zostanie warunek
else if(inne_wyrażenie_warunkowe)
   
instrukcja wykonywana jeśli spełniony zostanie drugi waruneka pierwszy nie
else
   
instrukcja wykonywana jeśli nie zostanie spełniony żaden z warunków
?>

Wyrażeniem warunkowym jest w zasadzie dowolne wyrażenie, ponieważ za warunek uznawane jest wszystko co zwraca wartość, czyli wszystkie zmienne, wyrażenia logiczne, funkcje itp. Za spełniony warunek uznawana jest wartość większa od zera.


<?

   $a 
2;
   
$b 5;
   
$c 1;
   
   if(
$a $b)
      echo 
"$a jest większe od $b";
   else if(
$b $c)
      echo 
"$b jest większe od $c";
   else
      echo 
"$c jest większe od $a i $b";

   if(
$a)
      echo 
"Zmienna $a ma wartość większą od zera";

?>

Jeśli chcemy, aby po sprawdzeniu warunku wykonane zostało nie jedno, ale kilka poleceń, to te polecenia trzeba ująć w nawiasy klamrowe. Bez tego warunkiem objęta by była tylko jedna instrukcja po instrukcji if.

Instrukcje mogą być zagnieżdżane wewnątrz siebie:


<?

$a 
6;
$b 5;
$c 1;

if(
$a $b){

   echo 
"$a jest większe od $b";   

   if(
$a $c)
      echo 
" i od $c"// Powinien zostać wyświetlony napis "6 jest większe od 5 i od 1"

}

?>

Oczywiście możliwe jest korzystanie z warunków bardziej złożonych niż pojedyńcze porównanie wielkości zmiennych - do łączenia warunków niezbędne jest wykorzystanie operatorów logicznych opisanych w poprzednim rozdziale. Operator logiczny OR (lub) ma większy priorytet niż operator AND (i), więc aby sprawdzić jakiś warunek gdzie konieczna jest inna kolejność, niezbędne jest użycie nawiasów grupujących warunki. Na przykład chcemy aby jakaś instrukcja była wykonana jeśli zmienna $a jest większa od $b lub $c, i zmienna $d była równa $e. Jeśli chcielibyśmy zapisać to bez żadnych nawiasów: $a > $b || $a > $c && $d == $e to efekt byłby zupełnie inny od zamierzonego: instrukcja była by wykonana jeśli $a było by większe od $b, lub jeśli $a było by większe od $a i $d było by równe $e. Poprawna konstrukcja to ($a > $b || $a > $c) && $d == $e.


<?

$a 
6;
$b 5;
$c 7;
$d 6;
$e 6;

if( (
$a $b || $a $c) && // Nawiasy klamrowe nie są potrzebne - to 
      
$d == $e // 2 linie ale jedna instrukcja
   
echo 'Zmienna $a jest większa od $b a zmienna $d jest równa $e, '
      
'więc ten tekst pokaże się.';   // Taka konstrukcja jest dozwolona

?>

2. Pętla FOR

Czasem zachodzi potrzeba wykonania jakiejś czynności określoną ilość razy. Z pomocą przychodzi jedna z najczęściej używanych składni w większości języków programowania, czyli pętla FOR. Ogólny zapis wygląda tak:


<?
for( inicjalizacja zmiennych sprawdzenie warunku modyfikacja zmiennych) {
    
    
blok wyrażeń
    
}
?>

Jak widać, w tej pętli podaje się 3 wyrażenia jako parametry: inicjalizację zmiennych, czyli ustawienie początkowych wartości dla zmiennych kontrolujących pętlę, sprawdzenie warunku, czyli wyrażenie logiczne kontrolujące pętlę - pętla będzie wykonywana dopóki ten warunek jest prawdziwy, oraz modyfikację zmiennych kontrolujących pętlę - bez tego pętla będzie wykonywała się w nieskończoność (oczywiście wartość tych zmiennych można modyfikować wewnątrz pętli, ale jest to niezalecane). Przykład najprostszej pętli, która wypisze cyfry od 1 do 10:


<?

for( $x 1$x <= 10$x++ )
   echo 
$x."<br>";

?>

3. Pętla while

Innym rodzajem pętli jest pętla WHILE. Jest ona wykorzystywana w sytuacjach, kiedy niezbędne jest wykonywanie jakiejś operacji dopóki nie zostanie spełniony warunek. Pętla while ma następującą składnię:


<?

while( warunek ){
   ...
   
instrukcje
   
...
}

?>

Można na przykład za pomocą tej pętli zapisać odpowiednik pętli FOR z poprzedniego przykładu:


<?

$x
=1;
while(
$x <= 10){
   echo 
$x."<BR>";
   
$x++;
}

?>

4. Pętla do...while

Odmianą pętli while jest pętla do...while. Od zwykłej pętli while różni się ona tym, że polecenia zawarte w pętli będą przynajmniej raz wykonane - w przypadku pętli while tak być nie musi, to znaczy jeśli za pierwszym razem warunek nie zostanie spełniony to polecenia z pętli nigdy nie zostaną wykonane. W przypadku tej pętli zostano one wykonane przynajmniej ten pierwszy raz. Składnia:


<?

do{
   ...
   
instrukcje
   
...
}while( 
warunek );

?>

5. Przerywanie wykonań pętli

Czasem zachodzi potrzeba przerwania danej iteracji (powtórzenia) pętli i przejścia do następnej iteracji. Z pomocą wtedy przychodzi instrukcja continue. Wystarczy wstawić ją w odpowiednie miejsce wewnątrz pętli. Przykład (niezbyt wyszukany):


<?

for($x 1$x<=100$x++) {
   if(
$x != 0)
      continue;

   echo 
$x." ";
}

?>

Po uruchomieniu powyższego przykładu powinniśmy zobaczyć liczby parzyste od 1 do 100. Oczywiścje można to zapisać łatwiej, ale chodziło o przykład:


<?

for($x 1$x<=100$x++) {
   if(
$x%2==0)
      echo 
$x." ";
}

?>

Istenie też polecenie, które powoduje całkowite wyjście z pętli - nie tylko z bieżącej iteracji. To polecenie to brake. Załóżmy, że zmienna $nazwa to zmienna podana z formularza:


<?

for($x 0$x<10$x++) {
   if(
$x%2==0)
      echo 
$x." ";
   if(
$nazwa == "Test1")
      break;
}

?>

6. Składnia switch

Składnia switch jest instrukcją warunkową, ale jedną zmienną można porównać nie z jedną wartością, ale z kilkoma. Niestety nie można konstruować złożonych warunków - możliwe jest tylko proste porównywanie (równoważne instrukcji: if($zmienna=="wartość") instrukcja). Składnia:


<?

switch($zmienna){
   case 
'wartość1':
      ...
      
instrukcje
      
...
      break;
   case 
'wartość2':
      ...
      
instrukcje
      
...
      break;
   default:
      ...
      
instrukcje
      
...
}

?>

Instrukcje zawarte po identyfikatorze "default" wykonywane są jeśli zmienna $zmienna nie przyjęła wartości "wartość1" i "wartość2" (dla tego przykładu). Aby móc dobrze wykorzystać tą składnię warto jest dokładnie wiedzieć jak ona działa. Instrukcje są przetwarzane linia po linii. Parser przechodzi do pierwszej linii "case" pasującej do zmiennej. Następnie przetwarzane są wszystkie linie wewnątrz nawiasów klamrowych aż do napotkania instrukcji break - nawet jeśli po drodze znajdują się instrukcje "case". Przykład:


<?

$i 
3;

switch(
$i){
   case 
0:
   case 
1:
   case 
2:
   case 
3:
      echo 
"Zmienna $i jest mniejsza bąd¼ równa od trzech\n";
      break;
   case 
4:
      echo 
"Zmienna $i jest równa cztery\n";
      break;
   default:
      echo 
"Zmienna $i jest większa od czterech\n";
}

?>

komentarz[5] |

Copyright 2006 - 2007 E-comet.info. Wszelkie prawa zastrzeone.

programy,artykuy,gry online,teledyski,filmiki,smieszne reklamy,sterowniki,kodeki,programy,program,download, downloads,security,bramka sms, teledyski,antywirusy,darmowe free program,programy p2p,tapety,programy biurowe,programy dla firm,narzdzia dyskowe,edytory,gry strategiczne,gry przygodowe,gry sportowe, symulatory, gry rpg,gry karciane, gry zrecznosciowe. Zapraszamy.
0.021 |