PHP else if: dodatkowy warunek elseif w PHP


PHP else if

Poprzednio omawialiśmy przypadek parzystości liczby. Co w przypadku, gdy chcemy rozważyć kilka alternatyw? Wyobraźmy sobie, że potrzebujemy sprawdzić, czy liczba jest podzielna przez osiem. Jeśli nie jest, chcemy sprawdzić czy dzieli sie przez cztery. Jeśli nie, to przez dwa. Jeżeli żaden warunek nie zostanie spełniony wyświetlamy odpowiedni komunikat.

Liczba podzielna przez osiem jest podzielna również przez cztery i przez dwa. Jeśli użylibyśmy czterech ifów, trafiając na liczbę osiem spełnione byłyby trzy warunki. My chcemy, aby tylko jedna instrukcja została wykonana. W PHP możemy to osiągnąć poprzez użycie dodatkowych alternatyw elseif.

Zobaczmy przykład poniżej:

<?php
$a = 34; // przypisujemy wartość zmiennej $a

if ($a%8 == 0) // liczba podzielna przez osiem
  echo "Liczba podzielna przez osiem";

elseif ($a%4 == 0) // liczba podzielna przez cztery
  echo "Liczba podzielna przez 4, ale nie przez 8";

elseif ($a%2 == 0) // liczba podzielna przez dwa
  echo "Liczba podzielna przez 2, ale nie przez 4";

else // żadna z powyższych
  echo "Liczba nieparzysta";
?>

Jak widać poprzez zastosowanie elseif, możemy w jednym podejściu rozważyć kilka możliwości. Gdy jedna z nich zostanie spełniona, pozostałe nie będą już sprawdzane. Podobnie jak przy zwykłym if, możemy pominąć klamrowe nawiasy w przypadku tylko jednej instrukcji.

Podsumowując, dzięki else if możemy dołożyć kolejny warunek do sprawdzenia w przypadku, gdy poprzedni nie został spełniony. Jeżeli którykolwiek z poprzedzających warunków został spełniony, kolejne bloki elseif nie zostaną sprawdzone ani wykonane.

W następnej lekcji zobaczymy, jak można uzyskać taki sam efekt korzystając z instrukcji switch. Zapraszam!

Spis lekcji w rozdziale drugim

Poprzednia lekcja: Instrukcja if… else Następna lekcja: Instrukcja switch

Kurs PHP i MySQL w formie wygodnego e-booka?

ZA DARMOPobieram kurs w formie e-booka