Kurs PHP - część III. Warunki

Nawigacja
Szablony stron
Polecamy
hosting
wht - hosting
www.webhostingtalk.…
portugalia last minute
Blog o Portugalii.
www.portugalia4u.pl…
Sport
Sport
ajo.pl/sport/
Hotel w Warszawie
Dobry Hotel w Warszawie
hotele.poland.com
kalendarze książkowe
kalendarze książkowe
www.kalendarze.acco…
Africa Phone Card
from USA
www.pinsonsales.com
Dokumenty
Dokumenty
ajo.pl/dokumenty-do…
Tanie loty przeloty
Tanie loty latanie, tanie linie
www.eprzeloty.pl
gierki
gry online
gramy.org
w580i
Sony Ericsson W580i
www.w580i.pl
Skrypty szablony
Skrypty szablony
ajo.pl/skrypty-szab…
Serwis komputerowy Poznań
Usługi informatyczne Poznań
nuke4u.com
teksty piosenek po polsku
teksty piosenek
www.piosenkoznajdow…
gg
gg
www.softmania.pl/pr…
Galeria na aukcje
Galeria na aukcje Allegro
www.obeo.pl/narzedz…
Komentarzy: 0
W każdym języku programowania niezwykle ważnym elementem jest zastosowanie konstrujcki warunkowych. Jeśli zmienna a ma wartość 1 wykonaj te instrukcje jeżeli wartość tej zmiennej jest inna wykonaj inne instrukcje. Dziś wyjasnienie jak takie konstrukcje wyglądają w PHP.

Instrukcja warunkowa if


Konstrukcje warunkowe służą do sprawdzania, czy dane wyrażenie zwraca wartość prawdziwą (true), czy fałszywą (false).
Wyrażeniem jest z reguły jakieś porównanie, typu "czy 4 jest większe od 7?". To wyrażenie zwróciłoby false.

A jak zapisać takie porównania? Służą do tego operatory. Oto ich wykaz i krótki opis:

<?php
== // równa się
!= // nie równa się (jest różne od)
< // jest mniejsze
> // jest większe
<= // jest mniejsze lub równe
>= // jest większe lub równe
?>


Czyli nasze poprzednie wyrażenie wyglądałoby tak:

4 > 7


Tyle chyba pamiętamy z matematyki... :) Oczywiście to wyrażenie nie ma sensu, innymi słowy zwraca false.

A teraz od razu trudniejsze zadanie. Jeżeli zmienna $a jest mniejsza lub równa od zmiennej $b, to wyświetl wartość zmiennej $a. W przeciwnym razie wyświetl $b.
I tu się pojawia słówko if wraz z słówkiem else.

<?php
if ($a <= $b)
{
echo
$a;
}
else
{
echo
$b;
}
?>


I po kolei:
  • if wprowadza konstrukcję warunku;
  • w nawiasach okrągłych jest sprawdzane wyrażenie;
  • następnie w klamrach instrukcje (może być ich tu dużo) wykonywane wtedy, gdy warunek jest prawdziwy;
  • potem else określa część, od której wykonywane są instrukcje gdy warunek nie jest spełniony;
  • instrukcje w klamrach

Uwaga: część else i instrukcje po tym słowie są opcjonalne. Jeżeli ich nie podamy, to gdy warunek będzie fałszywy, to nic się nie stanie. Skrypt będzie wykonywał kolejne instrukcje.

To jeszcze nic. Możemy sprawdzać nawet kilka warunków naraz. Dla przykładu: Jeżeli jest zima i jest śnieg, to możemy ulepić bałwana (oba warunki muszą być spełnione - nie licząc wyjątkowo długo utrzymujących się niskich temperatur, no ale klimat się ociepla :)). Albo: jeżeli mamy gotówkę lub mamy kartę kredytową, to możemy zapłacić. Tu wystarczy jeden warunek.
I jeszcze inaczej. Jeżeli nie mamy garnituru, to nie wpuszczą nas na bal. Jest to zaprzeczenie warunku "mam garnitur".

I do takiego wielokrotnego porównania lub przeczenia służą operatory logiczne. Oto ich niezbyt długa lista:

<?php
&& // AND - i
|| // OR - lub
! // NOT - nie
?>



Bardzo użyteczna możliwość PHP - sprawdzanie hasła. W zmiennej $password jest prawidłowe hasło. Zmienna $login zawiera prawidłowy login.
Z formularza są pobrane zmienne (o pobieraniu danych z formularza będzie mowa w części 5 kursu) $_POST['form_password'] i $_POST['form_login']. Jeżeli i login i hasło są prawidłowe, to witamy. Jeżeli nie... cóż...

<?php
if ($login == $_POST['form_login'] && $password == $_POST['form_password'])
{
echo
'Witamy na tajnej stronie!';
}
else
{
echo
'Kto ci pozwolił tu wchodzić!!!';
}
?>



A teraz sprawdzamy czy zmienna $liczba należy do sumy: przedziału domkniętego od $a do $b i przedziału otwartego od $c do $d.

<?php
echo $a;
if (!((
$liczba >= $a && $liczba <= $b) || ($liczba > $c && $liczba < $d))
{
echo
' nie ';
}
echo
'należy do tego przedziału';
?>


I komentarz do tego skomplikowanego warunku. Można to tak interpretować: jeżeli $liczba nie należy do żadnego z tych przedziałów (przy okazji: suma przedziałów to operator lub - ||) to napisz "nie".
A potem już leci że należy itd. else jest tu niepotrzebne, bo jeżeli liczba należy do sumy przedziałów, to po prostu piszemy "należy...".

Warunki jeszcze inaczej, czyli słowo switch


Słowo switch to też inny typ sprawdzania warunku. Jednak switch potrafi sprawdzić tylko równość. Za to może sprawdzać wiele możliwości (switch znaczy po angielsku przełączać).
Zawsze występuje z nim jeszcze słowo case i w większości przypadków break.
Może być używane do najbanalniejszego wyświetlania różnych komunikatów (dla przykładu, z reguły stosuje się do poważniejszych celów :) ).

Z formularza pobierana jest zmienna $samochod. Oto składnia i to, co switch może zrobić z samochodem :))).

<?php
switch ($samochod)
{
case
'Opel':
echo
'Ja też mam Opla!';
break;

case
'Ford':
echo
'eee... Dziadostwo...';
break;

case
'Maluch':
echo
'No i tak trzymać! Maluch rulez!';
break;
}
?>


Składnia:
  • switch
  • w nawiasach okrągłych zmienna, którą porównujemy
  • klamra otwierająca
  • słówko case, wartość i dwukropek
  • instrukcje wykonywane gdy zmienna równa się wartości przy case
  • break
  • i tak wszystkie case (przypadki), a potem klamra zamykająca switch

A po co jest break (przerwa)? A po to, że bez niego wykonają się instrukcje po wszystkich następnych case. W efekcie mielibyśmy:
Ja też mam Opla!eee... Dziadostwo...No i tak trzymać! Maluch rulez!

Razem ze switch można spotkać jeszcze jedno słowo: default. Po tym słowie następuje (jak w przypadku case) instrukcje, które zostaną wykonane wtedy i tylko wtedy, gdy, wartość przy switch nie odpowiada żadnemu case. Default to po angielsku "domyślny", stąd i takie zastosowanie.

Komentarzy: 0
Polecamy
Newsletter
Chcę otrzymywać informacje o nowościach na stronie!

Mój adres email:
Zgadzam się z Polityką Prywatności.

Pamiętaj - nigdy, nikomu nie udostępniamy Twojego adresu email!

Jeszcze nie przekonany? Zobacz jak wygląda przykładowy newsletter
Strona główna | Tworzenie strony | Promocja strony | Zarabianie na stronie | Narzędzia | Mapa strony

High Web Profit - Jak zrobić dochodową stronę internetową?
Marcin Chrapka i Lukasz Piernikarczyk

statystyki www stat.pl