PHP jest językiem o dynamicznym i słabym typowaniu. Oznacza to, że typ zmiennej jest ustalany w czasie działania programu, a nie zawsze musi być jawnie zadeklarowany przez programistę.
Co oznacza dynamiczne typowanie?
W PHP zmienna może przechowywać różne typy danych w różnych momentach działania programu:
$wartosc = 10; // liczba całkowita
$wartosc = "tekst"; // ciąg znaków
$wartosc = true; // wartość logiczna
Nie trzeba wcześniej deklarować typu zmiennej, np. int, string czy bool.
Co oznacza słabe typowanie?
PHP często automatycznie konwertuje typy danych, jeśli wymaga tego operacja:
echo "5" + 2; // wynik: 7
Napis "5" został potraktowany jak liczba. Dlatego mówi się, że PHP ma ograniczoną kontrolę typów.
Ważne na egzaminie
Prawdziwe stwierdzenie o PHP to: jest to język z ograniczoną kontrolą typów.
PHP pozwala jednak na stosowanie deklaracji typów, np. w funkcjach:
function suma(int $a, int $b): int {
return $a + $b;
}
Mimo tego podstawową cechą PHP pozostaje dynamiczne typowanie, szczególnie w prostych skryptach.