Typy zmiennych
Ostatnia modyfikacja: 01.06.2021
W PHP typ zmiennej dobierany jest automatycznie, w zależności od jej zawartości. Możemy więc w każdej chwili do zmiennej zawierającej liczbę, przypisać tekst i od razu zmieni się jej typ. Powiedziałbym co prawda, że to przeważnie może nie być zbyt dobra praktyka, ale tak to działa, taka możliwość jest.
Myślę, że warto w tym momencie powiedzieć o funkcji var_dump()
. Jest ona szczególnie przydatna podczas testowania kodu, nie za bardzo można użyć jej przy standardowym wyświetlaniu danych. Pokazuje na ekranie typ zmiennej oraz jej aktualną wartość, bez względu co by to było. Jeśli będzie to tablica, zobaczymy jej wszystkie elementy, jeśli obiekt to wszystkie jego właściwości i tak dalej. W nawiasach (argument dla funkcji) przekazujemy nazwę zmiennej, możemy też wymienić kilka po przecinku.
Wyróżniamy następujące typy:
-
boolean, bool - prawda
true
lub fałszfalse
(wartość logiczna, czasem jest też określana jako odpowiednio1
i0
)<?php $isVisible = true; var_dump($isVisible); // result: bool(true)
-
integer, int - liczba całkowita
<?php $age = 18; var_dump($age); // result: int(18)
-
float - liczba zmiennoprzecinkowa
<?php $price = 19.99; var_dump($price); // result: float(19.99)
Powszechny problem - przecinek
Zwróć uwagę, że do oddzielania części dziesiętnych używamy znaku kropki, a nie przecinka.
-
string - tekst
<?php $title = 'PHPDevs'; var_dump($title); // result: string(7) "PHPDevs"
Powszechny problem - tekst
Ciągi znaków zapisujemy w apostrofach lub cudzysłowach (różnica zostanie omówiona później).
-
array - tablica
-
object - obiekt
-
resource
-
null
<?php $user = null; var_dump($user); // result: NULL
Tablicom poświęcimy trochę czasu już niedługo. O obiektach będzie w kursie dużo później, gdyż to szerokie zagadnienie. Pozostałych typów nie będę specjalnie omawiał - proste przykłady widzisz powyżej, a szerzej poznamy je przy okazji, podczas dalszej nauki.
Dokumentacja: www.php.net/manual/en/language.operators.php, www.php.net/manual/en/function.var-dump.php
Komentarze