Instrukcja switch działa podobnie do instrukcji if, ale można zadeklarować w niej sprawdzanie tylko jednego warunku.
PODSTAWOWA SKŁADNIA
Instrukcja switch przyjmuje w nawiasie okrągłym wartość zmiennej, funkcji bądź też konstruktora. W zależności od wartości zdefiniowanej po wyrażeniu case wykonuje instrukcję do momentu wystąpienia instrukcji break -Nasz skrypt wyświetli komunikat bo zmienna $i ma wartość 2.
<?php
$i = 2;
switch ($i)
{
case 1:
echo ‚Zmienna ma wartość 1’ ;
break;
case 2:
echo ‚ Zmienna ma wartość 2’ ;
break;
} ?>
W wyniku działania programu, zostanie wyświetlony wynik: Zmienna wartość 2
<?php
$i = 3;
switch($i)
{
case 1:
echo ‚Zmienna ma wartość 1’;
break;
case 2:
echo ‚Zmienna ma wartość 2’;
break;
default:
echo ‚ Zmienna ma wartość inną niż 1 lub 2’
break;
}
?>
WYKONYWANIE KODU DOMYŚLNEGO
Dzięki zastosowaniu instrukcji default 41 wewnątrz programu możemy wykonać dokładnie taką samą operację, jak podczas wpisywania w warunku if instrukcji else. Realizuje ona domyślną, określoną przez nas akcję jeżeli
żaden z warunków nie zostanie spełniony.
W wyniku działania programu, zostanie wyświetlony wynik: Zmienna ma wartość inną niż 1 lub 2.
Łączenie warunków w instrukcji if
<?php
$Zmienna1 = TRUE;
$Zmienna2 = TRUE;
if ($Zmienna1)
if ($Zmienna2)
{
echo ‚Zmienna1 i Zmienna2 posiadają wartość TRUE’
}
else
{
echo ‚Zmienn2 nie posiada wartości TRUE’;
}
else
{
echo ‚Zmienna1 nie posiada wartości TRUE’;
}
?>
Instrukcja ta pozwala nam na połączenie dowolnej ilości warunków, możemy także poszczególne grupować i sprawdzać, czy wartości się zgadzają ze sobą bądź też nie, i dopiero wówczas wykonać fragment kodu zawarty wewnątrz jej nawiasów. Nasz skrypt służy do sprawdzania, czy Zmienna1 i Zmienna2 mają wartość TRUE. Wynik jego działania wygląda następująco.
Dzięki zastosowaniu połączenia za pomocą op< tora AND możemy dwie zmienne sprawdzić w jednym warunku, który dodatkowo będzie o wiele prostszy do zrozumienia 49. Instrukcja if pozwala także na sprawdzenie tego, czy w PHP, które obecnie znajduje się na serwerze, są dostępne odpowiednie funkcje. Użyjemy do tego celu specjalnej funkcji function_exi-sts(), która jako argument przyjmuje nazwę funkcji, której istnienie chcemy potwierdzić. Nasz skrypt wyświetli komunikat.
<?php
if (function_exists (‚ mysql_connect’))
{
echo ‚Funkcja do połączenia się z bazą danych MySQL istnieje’
}
else {
echo ‚Funkcja do połączenia się z bazą danych MySQL NIE istnieje’
} ?>