Zmienne nie mogą być ujemne. Zmienna to zmienna. Może ona co najwyżej przyjmować wartości ujemne, jeżeli jest liczbą. Pozostaje kwestia rzutowania, bo jeśli np. w tablicy $_GET przekazaliśmy jakąś zmienną, której wartość "jest" liczbą ujemną, to musimy pamiętać, że wartość w tej tablicy $_GET to nie liczba, a ciąg znaków. Jeżeli chcemy, aby była to liczba, to najlepiej rzutować wartość i zapisać ją pod nową zmienną. Przykład:
if(isset($_GET['liczba']) && $_GET['liczba'] != '') { $liczba = (int) $_GET['liczba'];
}
Wtedy mamy pewność, że zmienna $liczba jest liczbą całkowitą. Oczywiście możemy rzutować również na inne typy zmiennych (czy to liczbowe, czy nie). Do porównywania zarówno typów, jak i wartości służy operator ===, jeżeli chcemy sprawdzić czy typy i wartości są różne to stosujemy !==.