Funkcja is_int() w PHP służy do sprawdzenia, czy podana wartość (argument) ma dokładnie typ całkowity, czyli int. Funkcja nie "zgaduje" typu na podstawie wyglądu danych i nie dokonuje automatycznej konwersji, tylko odpowiada na pytanie: "czy to już jest int?".
Wywołanie is_int(135) zwróci TRUE, ponieważ liczba 135 zapisana bez cudzysłowów i bez części ułamkowej jest literałem typu całkowitego.
- Odpowiedź is_int(NULL) jest błędna, bo NULL w PHP jest osobnym typem oznaczającym brak wartości. To nie jest liczba całkowita.
- Odpowiedź is_int(13.5) jest błędna, ponieważ 13.5 ma część ułamkową, więc w PHP jest traktowane jako liczba zmiennoprzecinkowa (float), a nie int.
- Odpowiedź is_int("135") jest błędna, bo zapis w cudzysłowie tworzy napis (string). To częsty błąd: ciąg znaków "135" wygląda jak liczba, ale typ nadal pozostaje tekstowy.
W praktyce, gdy dane pochodzą np. z formularza, bardzo często będą typu string. Wtedy do oceny, czy "da się to potraktować jak liczbę", używa się innych podejść (np. walidacji i konwersji), ale is_int() sprawdza wyłącznie aktualny typ.