Operatory to specjalne symbole, które wykonują operacje na wartościach i zmiennych. Dzięki nim nasz kod nabiera dynamiki. W tej lekcji poznamy ich najważniejsze rodzaje. Stwórz nowy plik operatory.php.
1. Operatory Arytmetyczne (Matematyka)
Służą do wykonywania podstawowych działań matematycznych.
+(dodawanie)-(odejmowanie)*(mnożenie)/(dzielenie)%(modulo – reszta z dzielenia)
Przykład:
<?php
$x = 10;
$y = 4;
echo "Dodawanie: " . ($x + $y); // Wynik: 14
echo "<br>"; // Wstawia nową linię w HTML
echo "Mnożenie: " . ($x * $y); // Wynik: 40
echo "<br>";
echo "Reszta z dzielenia: " . ($x % $y); // Wynik: 2 (bo 10 / 4 = 2, reszta 2)
echo "<br>";
?>2. Operatory Przypisania (Skróty)
Znasz już podstawowy operator przypisania (=). Istnieją też jego wersje skrócone, które pozwalają pisać kod zwięźlej.
+=(dodaj i przypisz), np.$x += 2;to to samo co$x = $x + 2;-=(odejmij i przypisz)*=(pomnóż i przypisz)/=(podziel i przypisz).=(połącz tekst i przypisz), np.$tekst .= "!";to to samo co$tekst = $tekst . "!";
Przykład:
<?php
$licznik = 5;
$licznik += 3; // Teraz $licznik ma wartość 8
echo $licznik; // Wyświetli 8
echo "<br>";
$powitanie = "Dzień dobry";
$powitanie .= ", Anno!"; // Teraz $powitanie ma wartość "Dzień dobry, Anno!"
echo $powitanie;
?>3. Operatory Porównania (Prawda czy Fałsz?)
Niezwykle ważne! Służą do porównywania dwóch wartości. Wynikiem ich działania jest zawsze wartość logiczna: true (prawda) lub false (fałsz).
==(równe) – sprawdza, czy wartości są równe.===(identyczne) – sprawdza, czy wartości i typy danych są równe. Używaj tego domyślnie!!=(różne)!==(nieidentyczne)>(większe niż)<(mniejsze niż)>=(większe lub równe)<=(mniejsze lub równe)
Przykład:
<?php
$a = 5;
$b = "5"; // Zwróć uwagę, że to jest string!
$c = 10;
// Funkcja var_dump() jest świetna do debugowania - pokazuje typ i wartość
var_dump($a == $b); // Wynik: bool(true) - bo "5" jest równe 5
echo "<br>";
var_dump($a === $b); // Wynik: bool(false) - bo typ int nie jest identyczny jak string
echo "<br>";
var_dump($a != $b); // Wynik: bool(false)
echo "<br>";
var_dump($a !== $b); // Wynik: bool(true)
echo "<br>";
var_dump($a < $c); // Wynik: bool(true)
?>Zapamiętaj: Różnica między == a === jest kluczowa. Zawsze, gdy to możliwe, używaj potrójnego znaku równości ===, aby uniknąć nieoczekiwanych błędów.
4. Operatory Logiczne (Łączenie Warunków)
Pozwalają łączyć ze sobą wiele warunków porównania.
&&(oraz) –(warunek1 && warunek2)jest prawdziwe tylko wtedy, gdy oba warunki są prawdziwe.||(lub) –(warunek1 || warunek2)jest prawdziwe, gdy przynajmniej jeden z warunków jest prawdziwy.!(nie) –!warunekodwraca wartość logiczną (ztruerobifalsei odwrotnie).
Przykład:
<?php
$wiek = 25;
$posiadaPrawoJazdy = true;
// Czy wiek jest większy od 18 ORAZ czy posiada prawo jazdy?
var_dump($wiek > 18 && $posiadaPrawoJazdy); // Wynik: bool(true)
// Czy wiek jest mniejszy od 18 LUB czy NIE posiada prawa jazdy?
var_dump($wiek < 18 || !$posiadaPrawoJazdy); // Wynik: bool(false)
?>5. Nowoczesny Operator: Null Coalescing (??)
Bardzo przydatny skrót w nowoczesnym PHP. Pozwala sprawdzić, czy zmienna istnieje i nie jest null. Jeśli nie jest, używa jej wartości. Jeśli jest, używa wartości domyślnej.
Przykład: Zamiast pisać długi kod:
if (isset($nazwaUzytkownika)) {
$powitanie = $nazwaUzytkownika;
} else {
$powitanie = "Gość";
}Możemy napisać to samo w jednej linijce:
<?php
// Załóżmy, że $nazwaUzytkownika nie istnieje
$powitanie = $nazwaUzytkownika ?? "Gość";
echo $powitanie; // Wynik: Gość
echo "<br>";
$login = "admin";
$nazwaDoWyswietlenia = $login ?? "Gość";
echo $nazwaDoWyswietlenia; // Wynik: admin
?>To czysty, czytelny i nowoczesny sposób na przypisywanie wartości domyślnych.
Podsumowanie
Gratulacje! Opanowałeś właśnie operatory – narzędzia, które pozwalają Twojemu kodowi wykonywać obliczenia, porównywać dane i podejmować logiczne decyzje. Są one absolutnie niezbędne do budowania jakiejkolwiek logiki w programie.