Instrukcja if...else służy w PHP do wykonywania różnych fragmentów kodu zależnie od spełnienia warunku. Warunek zapisuje się w nawiasach okrągłych, a wykonywany kod najczęściej w klamrach.
Podstawowa składnia
if ($wiek >= 18) {
echo "Pełnoletni";
} else {
echo "Niepełnoletni";
}
Jeżeli warunek w if jest prawdziwy, wykona się pierwszy blok. W przeciwnym razie wykona się blok else.
Średniki w instrukcji if
W PHP średnik kończy pojedynczą instrukcję, np. echo, przypisanie albo wywołanie funkcji. Nie stawia się średnika bezpośrednio po nagłówku if (...), jeśli po nim występuje blok kodu w klamrach.
Poprawnie:
if ($x > 0) {
echo "Dodatnia";
} else {
echo "Niedodatnia";
}
Poprawnie także bez klamerek dla jednej instrukcji:
if ($x > 0)
echo "Dodatnia";
else
echo "Niedodatnia";
W tym drugim wariancie średnik po echo "Dodatnia" jest konieczny, ponieważ kończy instrukcję wykonywaną po if. Jeśli go zabraknie przed else, interpreter zgłosi błąd składni.
Typowy błąd
if ($x > 0)
echo "Dodatnia"
else
echo "Niedodatnia";
Brakuje średnika po echo "Dodatnia", więc PHP nie potrafi poprawnie zinterpretować początku else.
Ważne na egzaminie
- wcięcia poprawiają czytelność, ale zwykle nie decydują o działaniu PHP,
- zmienne można przypisywać lub sprawdzać w warunkach,
- puste pole formularza nie musi powodować błędu składni,
- brak wymaganego średnika może zatrzymać wykonanie skryptu.