Lekcja 2 – Funkcje i instrukcje warunkowe w PHP

Czym są instrukcje warunkowe?

Instrukcje warunkowe są jednym z kluczowych narzędzi w programowaniu, ponieważ pozwalają podejmować decyzje w zależności od określonych warunków. W PHP instrukcje warunkowe pozwalają na wykonywanie różnych fragmentów kodu w zależności od tego, czy dany warunek jest spełniony (prawdziwy), czy nie.

Najczęściej stosowane instrukcje warunkowe w PHP to: if, else, elseif, oraz switch.

Instrukcja if

Instrukcja if sprawdza, czy określony warunek jest prawdziwy, a jeśli tak, wykonuje kod umieszczony wewnątrz bloku {}.

<?php
  $wiek = 20;

  if ($wiek >= 18) {
    echo "Jesteś pełnoletni.";
  }
?>

W tym przykładzie PHP sprawdza, czy wartość zmiennej $wiek jest większa lub równa 18. Jeśli tak, zostanie wyświetlony komunikat “Jesteś pełnoletni.”.

Instrukcja else

Instrukcja else jest używana razem z if, aby określić, co zrobić, gdy warunek if nie zostanie spełniony. Jest to sposób na obsługę alternatywnego działania.

Przykład:

<?php
  $wiek = 16;

  if ($wiek >= 18) {
    echo "Jesteś pełnoletni.";
  } else {
    echo "Jesteś niepełnoletni.";
  }
?>

Tutaj, jeśli wartość zmiennej $wiek jest mniejsza niż 18, zostanie wyświetlony komunikat “Jesteś niepełnoletni.”.

Instrukcja elseif

Instrukcja elseif pozwala na dodanie kolejnych warunków, które są sprawdzane, jeśli poprzedni warunek if nie był prawdziwy.

Przykład:

<?php
  $wiek = 65;

  if ($wiek < 18) {
    echo "Jesteś niepełnoletni.";
  } elseif ($wiek >= 18 && $wiek < 65) {
    echo "Jesteś dorosły.";
  } else {
    echo "Jesteś emerytem.";
  }
?>

W tym przykładzie PHP sprawdza trzy różne warunki:

  • Jeśli wiek jest mniejszy niż 18, wyświetla “Jesteś niepełnoletni.”
  • Jeśli wiek jest większy lub równy 18, ale mniejszy niż 65, wyświetla “Jesteś dorosły.”
  • W przeciwnym razie wyświetla “Jesteś emerytem.”

Operator ternary

PHP obsługuje także uproszczoną wersję instrukcji warunkowej zwaną operatorem ternary. Jest to skrócony zapis instrukcji if-else.

Przykład:

<?php
  $wiek = 20;
  $status = ($wiek >= 18) ? "pełnoletni" : "niepełnoletni";
  echo "Jesteś " . $status . ".";
?>

Operator ternary działa w ten sposób: sprawdza warunek $wiek >= 18, jeśli jest prawdziwy, przypisuje wartość "pełnoletni", w przeciwnym razie "niepełnoletni".

Instrukcja switch

Instrukcja switch pozwala na sprawdzanie wartości zmiennej i wykonywanie odpowiedniego kodu w zależności od jej wartości. Jest przydatna, gdy mamy wiele możliwych wartości do sprawdzenia.

Przykład:

<?php
  $dzień = "poniedziałek";

  switch ($dzień) {
    case "poniedziałek":
      echo "Dziś jest poniedziałek.";
      break;
    case "wtorek":
      echo "Dziś jest wtorek.";
      break;
    case "środa":
      echo "Dziś jest środa.";
      break;
    default:
      echo "Nie wiem, jaki dziś dzień.";
  }
?>

Instrukcja switch sprawdza wartość zmiennej $dzień i porównuje ją z każdą wartością w case. Gdy znajdzie dopasowanie, wykonuje odpowiedni blok kodu. Instrukcja break przerywa dalsze sprawdzanie przypadków, a default jest wykonywany, gdy żadna wartość nie pasuje.

Funkcje w PHP

Funkcje to bloki kodu, które mogą być wielokrotnie wykorzystywane w programie. Dzięki funkcjom możemy zorganizować nasz kod, dzieląc go na mniejsze, zrozumiałe fragmenty.

Funkcje w PHP definiuje się za pomocą słowa kluczowego function, po którym następuje nazwa funkcji oraz nawiasy okrągłe. Kod, który ma być wykonany, umieszczamy w bloku {}.

Przykład funkcji:

<?php
  function przywitaj() {
    echo "Cześć!";
  }

  przywitaj(); // Wywołanie funkcji
?>

Tutaj zdefiniowaliśmy funkcję przywitaj, która wyświetla tekst “Cześć!”. Funkcję tę można później wywołać, wpisując jej nazwę.

Funkcje z argumentami

Funkcje mogą przyjmować argumenty, które są wartościami przekazywanymi do funkcji w momencie jej wywołania.

Przykład funkcji z argumentem:

<?php
  function przywitaj($imie) {
    echo "Cześć, " . $imie . "!";
  }

  przywitaj("Jan"); // Wywołanie funkcji z argumentem
?>

W tym przypadku funkcja przywitaj przyjmuje jeden argument – $imie, i wyświetla tekst “Cześć, Jan!” po wywołaniu.

Funkcje zwracające wartość

Funkcje mogą także zwracać wynik swojej pracy przy użyciu instrukcji return. Pozwala to na dalsze wykorzystanie wyniku funkcji w innych częściach programu.

Przykład funkcji zwracającej wartość:

<?php
  function dodaj($a, $b) {
    return $a + $b;
  }

  $wynik = dodaj(5, 3);
  echo $wynik; // Wyświetli: 8
?>

Tutaj funkcja dodaj przyjmuje dwa argumenty, dodaje je do siebie, a następnie zwraca wynik. Wynik ten jest przypisany do zmiennej $wynik, którą później wyświetlamy.

Funkcje z domyślnymi wartościami

W PHP możemy również zdefiniować funkcje z domyślnymi wartościami argumentów. Jeśli podczas wywoływania funkcji nie podamy wartości dla argumentu, PHP użyje wartości domyślnej.

Przykład:

<?php
  function powitanie($imie = "gość") {
    echo "Witaj, " . $imie . "!";
  }

  powitanie(); // Wyświetli: Witaj, gość!
  powitanie("Jan"); // Wyświetli: Witaj, Jan!
?>

W tej lekcji omówiliśmy podstawowe instrukcje warunkowe oraz funkcje w PHP. W kolejnych lekcjach poznamy, jak używać pętli oraz bardziej zaawansowane techniki programowania.

Gratulacje! Ukończyłeś lekcję 2.
Przejdź teraz do lekcji 3 >> Pętle w PHP


Spis Treści - darmowy kurs PHP

Wprowadzenie: Instalacja środowiska PHP
Lekcja 1: Podstawy składni PHP
Lekcja 2: Funkcje i instrukcje warunkowe w PHP
Lekcja 3: Pętle w PHP
Lekcja 4: Tablice w PHP
Lekcja 5: Dodatkowe podstawy funkcji w PHP
Lekcja 6: Praca z formularzami HTML w PHP
Lekcja 7: Obsługa plików w PHP
Lekcja 8: Sesje i ciasteczka w PHP
Lekcja 9: Podstawy operacji na bazach danych MySQL z PHP
Lekcja 10: Prepared Statements w PHP i bezpieczeństwo aplikacji
Lekcja 11: Zarządzanie użytkownikami – rejestracja, logowanie i autoryzacja w PHP
Lekcja 12: Wzorce projektowe w PHP – wprowadzenie do wzorca MVC
Lekcja 13: Zaawansowane techniki pracy z bazami danych w PHP
Lekcja 14: Testowanie jednostkowe w PHP z PHPUnit
Lekcja 15: Tworzenie i korzystanie z API RESTful w PHP
Lekcja 16: Obsługa plików JSON i XML w PHP

Dodatki
- Spis najważniejszych funkcji PHP