Które z poniższych zdań dotyczących zasad programowania w języku PHP jest prawdziwe?
! oznacza negację.$Suma i $suma to różne zmienne.var deklaruje zmienne w JavaScripcie; w PHP zmienna powstaje przy pierwszym przypisaniu.Pytanie z egzaminu CKE, styczeń 2017 (arkusz E.14-X-17.01).
PHP jest językiem o słabej (dynamicznej) kontroli typów. Zmiennej nie deklaruje się z typem - typ wynika z przypisanej wartości i może się zmieniać w trakcie działania skryptu. Po $a = 5; zmienna przechowuje liczbę całkowitą, a po $a = "tekst"; napis. PHP często też sam konwertuje typy: "5" + 3 daje 8.
Ta swoboda bywa źródłem błędów, dlatego przy porównaniach stosuje się operator ===, który sprawdza również typ: "5" == 5 jest prawdą, a "5" === 5 już nie. Od PHP 7 można też deklarować typy parametrów funkcji, a declare(strict_types=1); wyłącza automatyczną konwersję przy ich przekazywaniu.
Fałszywe zdania opisują raczej JavaScript lub inne języki niż PHP. Słowo var deklaruje zmienne w JavaScripcie. W PHP zmienna powstaje w chwili pierwszego przypisania, np. $wynik = 0;, a var przetrwało jedynie jako przestarzały sposób deklarowania pól w klasach.
Wielkość liter w nazwach zmiennych PHP ma znaczenie: $Suma i $suma to dwie różne zmienne. Nie rozróżnia jej PHP w nazwach funkcji i słowach kluczowych, stąd ta pomyłka.
Nazwę zmiennej poprzedza znak dolara, a nie wykrzyknik. Znak ! to w PHP operator negacji logicznej, na przykład w if (!$polaczenie). Prawdziwe jest tylko zdanie o słabej kontroli typów.
Takie zadania łatwo pomylić, gdy uczy się kilku języków jednocześnie, dlatego warto zestawić sobie w tabeli różnice w deklarowaniu zmiennych między PHP a JavaScriptem i zapamiętać je osobno.