Instrukcje warunkowe w PHP
PHP udostępnia kilka instrukcji warunkowych, czyli takich, które w zależności od wartości wyrażenia true (prawda) lub false (fałsz), sterują przebiegiem programu.
Spis treści:
if
Instrukcja if najpierw sprawdza dany warunek, i w zależności od tego czy zwróci wartość true (prawda) czy false (fałsz) wykona lub nie wykona blok kodu zawarty w klamrach.
Składnia instrukcji if
// kod programu
}
Zobaczmy przykład.
Kod - przykład zastosowania instrukcji if
<?php $x = 1; if ($x==1) { echo "Tak, zmienna x jest jedynką, a instrukcja if zadziałała.<br>"; } if ($x>0) { echo "Tak, zmienna x jest większe od 0, a instrukcja if zadziałała.<br>"; } if ($x!=2) { echo "Tak, zmienna x nie jest dwójką, a instrukcja if zadziałała.<br>"; } if ($x!=1) { echo "Ten kod sie nie wykona, bo warunek nie jest spełniony"; } ?>
Powyższy kod wyświetli trzy komunikaty, bo wszystkie trzy pierwsze warunki są spełnione, ostatni zaś nie.
Możesz być nieco zdziwiony zapisem warunków. Co to jest na przykład za dziwny zapis "==" albo "!="? Jeśli nie rozumiesz tego zapisu, przeczytaj artykuł o operatorach w PHP.
Warunki można rozbudowywać, zagnieżdżać, używając operatorów logicznych i odpowiednio nawiasów.
Przykład 1
Jeżeli na przykład chcemy, aby skrypt się wykonał, gdy zmienna $x jest mniejsza od zera lub większa od 10, użyjemy warunku: if ($x<0 || $x>10) {...}.
Przykład 2
Jeżeli na przykład chcemy, aby skrypt się wykonał, gdy zmienna $x jest większa od 10 i równa 20 lub 30, to użyjemy warunku: if ($x>10 && ($x==20 || $x==30)) {...}.
Jeżeli jeszcze nie rozumiesz zasady działania instrukcji warunkowej if, zobacz poniższą animację.
if...else...
Instrukcja if ... else ... jest rozbudowaną wersją poprzedniej instrukcji warunkowej. Najpierw sprawdza dany warunek, i w zależności od tego czy zwróci wartość true (prawda) czy false (fałsz) wykona lub nie wykona blok kodu zawarty w klamrach.
Składnia
// kod programu dla warunku przyjmującego wartość true
} else {
///kod programu dla warunku przyjmującego wartość false
}
Zobaczmy przykład.
Kod - przykład zastosowania instrukcji if ... else
<?php $x = 1; if ($x==1) { echo "Ta instrukcja się wykonała, bo warunek zwraca wartość true.<br>Prawda, że x=1<br>"; } else { echo "Ta instrukcja się nie wykona, bo warunek zwraca wartość false"; } if ($x!=1) { echo "Ta instrukcja się nie wykona, bo warunek zwraca wartość true"; } else { echo "Ta instrukcja się wykonała, bo warunek zawraca wartość false.<br>Nieprawda, że x nie jest jedynką.<br>"; } ?>
switch
Instrukcja switch jest rozbudowaną wersją instrukcji warunkowej if, uzależniająca wykonywanie kodów od różnych przypadków, zdefiniowanych w instrukcji. Najpierw sprawdza dany warunek i w zależności od tego jaką wartość przyjmuje wyrażenie taki kod wykonuje.
Składnia instrukcji switch
case przypadek1:
// kod programu wykona się, gdy rezultat wyrażenia jest równy wartości przypadek1
break;
case przypadek2:
// kod programu wykona się, gdy rezultat wyrażenia jest równy wartości przypadek2
break;
default:
//kod programu wykona się gdy żaden z powyższych przypadków nie zaistnieje
}
Zobaczmy przykład.
Kod - przykład zastosowania instrukcji switch
<?php $x = 1; switch ($x) { case 1: echo "x=1"; break; case 2: echo "x=2"; break; default: echo "Trudno powiedzieć ile jest równe x ..."; } ?>
Instrukcja case jest bardzo rozbudowana. Pamiętaj, że możesz ją zastąpić wieloma warunkami if ... else ... .
Skrócona wersja if
To bardzo ciekawy i wygodny w stosowaniu operator. W jednej linijce kodu możemy przypisać do zmiennej wartość w zależności od zadanego warunku.
Składnia | Przykład |
zmienna = (warunek)?wartość1:wartość2 | Zapis $t=($wiek<18)?"młodzież":"dorosły" pozwala przypisać zmiennej $t tekst "młodzież", jeżeli wartość zmiennej $wiek jest mniejsza niż 18 lub tekst "dorosły", gdy wartość zmiennej $wiek nie jest mniejsza od 18. |
© medianauka.pl, 2021-09-04, A-4174
Data aktualizacji artykułu: 2024-06-29