Instrukcja switch w PHP
Słownik kwalifikacji INF.03 - Tworzenie i administrowanie stronami i aplikacjami internetowymi oraz bazami danych
switch to instrukcja wyboru, która pozwala wykonać różne fragmenty kodu zależnie od wartości zmiennej lub wyrażenia. Jest często czytelniejsza niż długa seria warunków if, gdy porównujemy jedną wartość z wieloma możliwymi przypadkami.
Składnia
switch ($zmienna) {
case 1:
// kod dla wartości 1
break;
case 2:
// kod dla wartości 2
break;
default:
// kod domyślny
}
Znaczenie elementów
switch ($zmienna)- wskazuje wartość, która będzie porównywana,case- określa konkretny przypadek,break- przerywa dalsze sprawdzanie przypadków,default- wykonuje się, gdy żadencasenie pasuje.
Przechodzenie między przypadkami
Jeżeli po case nie ma instrukcji break, PHP przechodzi do następnego przypadku. Nazywa się to fall-through.
Przykład:
switch ($liczba) {
case 10:
case 20:
$liczba++;
break;
default:
$liczba = 0;
}
Ten kod oznacza: jeżeli $liczba ma wartość 10 albo 20, zwiększ ją o 1. W przeciwnym razie ustaw ją na 0.
Równoważny zapis za pomocą if:
if ($liczba == 10 or $liczba == 20)
$liczba++;
else
$liczba = 0;
W zadaniach egzaminacyjnych należy zwracać uwagę na brak break, ponieważ może on zmienić działanie całej instrukcji.