W tym wpisie omówię tematykę operatorów jakie używamy w PHP. Jeżeli znasz już inny język programowania i poniższe operatory wydają ci się znajome to masz dobre odczucia. Te same operatory używane są także w innych językach.
Operatory to prawdopodobnie dla niektórych kolejne enigmatyczne hasło. Jednak w rzeczywistości nie jest to nic innego jak znaki takie jak „=”, „+”, ” -„. Z pewnością więc każdy je zna chociaż by z lekcji matematyki. W PHP mogą one jednak działać nieco inaczej. Dlatego warto im poświęcić chwilę, a z pewnością to zaprocentuje w przyszłości.
W PHP znaki te często bywają wieloznaczne a różniące się zapisy różnią się między sobą.
| Działanie | Równoznaczne | Rodzaj |
| x = y | x = y | równanie / elementy są równe |
| x += y | x = x + y | dodawanie do siebie elementów |
| x -= y | x = x – y | odejmowanie |
| x *= y | x = x * y | mnożenie |
| x /= y | x = x / y | dzielenie |
| x %= y | x = x % y | modulo (wyciągamy resztę) |
Przykładowo:
12/5 = 2 reszta 2 (12 dzielimy przez 5) -> bo 5 razy 2 to 10 i brakuje jeszcze 2 by mieć 12.
W PHP często musimy coś ze sobą porównywać, bardzo przydatne są przy tym operatory porównawcze.
| Operator | Nazwa | Przykład | Opis |
| == | równe | $x == $y | Zwróć wynik jeśli $x jest równe $y |
| === | identyczne | $x === $y | Zwróć wynik jeśli $x jest równe $y, i są tego samego typu |
| != | nie równe | $x != $y | Zwróć wynik jeśli $x jest nie są równe $y |
| <> | nie równe | $x <> $y | Zwróć wynik jeśli $x jest nie są równe $y |
| !== | nie identyczne | $x !== $y | Zwróć wynik jeśli $x jest nie są równe $y, albo nie są tego samego typu |
| > | większe niż | $x > $y | Zwróć wynik jeśli $x jeśli jest większe niż $y |
| < | mniejsze niż | $x < $y | Zwróć wynik jeśli $x jeśli jest mniejsze niż $y |
| >= | większe lub równe | $x >= $y | Zwróć wynik jeśli $x jeśli jest większe niż lub równe $y |
| <= | mniejsze lub równe | $x <= $y | Zwróć wynik jeśli $x jeśli jest mniejsze niż lub równe $y |
Operatory zmieniające wartość zmiennej. Bardzo przydatne np. podczas tworzenia prostych pętli.
| Operator | Nazwa | Opis |
| ++$x | preinkrementacja | Zwiększa $x o jeden, potem zwraca wartość $x |
| $x++ | postinkrementacja | Zwraca $x, potem zwiększa $x o jeden |
| –$x | predecrementacja | Zmniejsza $x o jeden, potem zwraca $x |
| $x– | postdecrementacja | Zwraca $x, potem zmniejsza $x o jeden |
Trochę to brzmi dziwnie dlatego zamieściłam przykłady:
$x=3;
$y = ++$x; // wynik $y==4, $x==4
$y = $x++; //wynik $y==3, $x==4
$y = $x–; // $x==2, $y==3
$y = –$x; // $x==1, $y==1
Dużo lepiej operacje te można zrozumieć kiedy zaczyna się je stosować w praktyce. Co polecam! Do przetestowania licznika przyda się pętla np. IF, FOR.
Kolejnym typem operatorów są operatory logiczne. Ich zadaniem jest również porównywanie pomiędzy sobą wartości zmiennych. Ich nazwy pokrywają się z bramkami logicznymi.
| Operator | Nazwa | Przykład | Opis |
| and | And | $x and $y | Prawda jeśli $x i $y są prawdziwe |
| or | Or | $x or $y | Prawda jeśli $x lub $y są prawdziwe |
| xor | Xor | $x xor $y | Prawda jeśli $x lub $y są prawdziwe, lub oba nie są |
| && | And | $x && $y | Prawda jeśli oba $x i $y są prawdziwe |
| || | Or | $x || $y | Prawda jeśli $x lub $y są prawdziwe |
| ! | Not | !$x | Prawda jeśli $x nie jest prawdziwe |
W PHP można również pracować na ciągach znaków (tekstach, numerach) zwanych stringami.
| Operator | Nazwa | Przykład | Opis |
| . | łączenie | $txt1 . $txt2 | łączenie ze sobą $txt1 i $txt2 |
| .= | przypisywanie | $txt1 .= $txt2 | Dokleja $txt2 do $txt1 |
Nieco innym typem na którym można operować są tablice. Dla uproszczenia można je porównać do tabelki w której znajdują się odpowiednio kolumny i wiersze. Tak jak tabelka może posiadać wiele kolumn i wierszy tak tablica może być jedno wymiarowa (1 kolumna – wiele wierszy) lub wielo-wymiarowa (wiele kolumn – wiele wierszy).
| Operator | Nazwa | Przykład | Opis |
| + | Union | $x + $y | związek of $x i $y |
| == | Equality | $x == $y | Zwraca true (prawdę), jeśli $ x i $ y mają takie same pary klucz / wartości |
| === | Identity | $x === $y | Zwraca true, jeśli $ x i $ y mają takie same pary klucz / wartość w tej samej kolejności i z tych samych typów |
| != | Inequality | $x != $y | Zwraca true jeśli $x nie jest równe $y |
| <> | Inequality | $x <> $y | Zwraca true jeśli $x nie jest równe $y |
| !== | Non-identity | $x !== $y | Zwraca true jeśli $x nie jest identyczne z $y |
Źródło:
Jak w przypadku wielu różnych tematów tak i w przypadku marki osobistej pojawiło się przez…
Choć zabrzmi to może nieco dziwnie to wprowadzenie AI (sztucznej inteligencji) do naszego życia było…
Widmo Brockenu to dość rzadko spotykane zjawisko optyczne, najczęściej widywane w wysokich partiach gór. Można…
Zacznę może od tego, że relikwia, relikwii nie równa. Wiem jeśli nie ma się pojęcia…
Logo stanowi jeden z ważniejszych elementów tożsamości wizualnej praktycznie każdej firmy, marki czy projektu. Logo…
Budując własną markę osobistą lub chcąc ją zbudować trzeba liczyć się z wieloma wyzwaniami. Jednym…