PHP | Instrukcje warunkowe · Technik informatyk egzamin zawodowy

Programowanie / PHP

PHP | Instrukcje warunkowe

Instrukcje warunkowe są jednym z najważniejszych elementów języka PHP, umożliwiającym wykonywanie określonych operacji w zależności od spełnienia danych warunków. Dzięki nim programy mogą reagować na różne sytuacje w elastyczny sposób.

Podstawowa składnia instrukcji warunkowej (if)

Najprostszy zapis instrukcji warunkowej:

if($a > 0) echo "Wartość zmiennej a jest większa od zera.";

W tym przypadku instrukcja wykona się, jeśli warunek będzie prawdziwy (czyli zmienna $a jest większa od 0).

 

Blok instrukcji warunkowej

Jeśli chcemy wykonać więcej instrukcji, grupujemy je w bloku:

if($a > 0){
    echo "a dodatnie";
    $b++;
    $c--;
}

 

Instrukcja warunkowa z alternatywą (else)

Jeśli warunek nie zostanie spełniony, możemy wskazać alternatywne działanie:

if($a > 0){
    echo "a większe od 0";
}else{
    echo "a nie jest większe od 0";
}

 

Więcej niż jeden warunek (elseif)

Możemy także zdefiniować wiele alternatywnych warunków:

if($imie == "Jaś") echo "Cześć Jasiu.";
elseif($imie == "Staś") echo "Cześć Stasiu";
else echo "Jak masz na imię?";

Uwaga! Operator porównania to ==, a operator przypisania to =. Błędne użycie operatora przypisania zawsze zwróci prawdę, ponieważ przypisanie wartości jest zawsze operacją prawdziwą.

 

Przykład: sprawdzanie parzystości

if($a % 2 == 0) echo "Wartość zmiennej a jest parzysta";
else echo "Wartość zmiennej a jest nieparzysta";

Skrócona wersja sprawdzająca nieparzystość:

if($a % 2) echo "Wartość zmiennej a jest nieparzysta";

 

Instrukcje pojedyncze kontra bloki

Przykłady różnic:

// bez bloku
if($a) $b++; $c--; // $c-- wykona się zawsze

// z blokiem
if($a){
    $b++;
    $c--; // wykona się tylko jeśli warunek jest prawdziwy
}

 

Operatory logiczne

  • && (i) – obie części muszą być prawdziwe

  • || (lub) – przynajmniej jedna część musi być prawdziwa

if($x > 0 && $y < 0) echo "X większe od zera i Y mniejsze od zera";
if($x > 0 || $y < 0) echo "X większe od zera lub Y mniejsze od zera";

 

Instrukcja wyboru (switch)

Pozwala na wybór jednej z wielu opcji w zależności od wartości zmiennej:

switch($k){
    case 1:
        echo "Jeden";
        $x++;
        break;
    case 2:
        echo "Dwa";
        $y++;
        break;
    default:
        echo "Domyślnie";
        $x++;
        $y++;
        break;
}

default to blok instrukcji, który wykona się, jeśli żaden z powyższych warunków nie zostanie spełniony.