Размер int зависит от платформы:
PHP_INT_MAX)При переполнении PHP автоматически преобразует int в float:
$x = PHP_INT_MAX; // 9223372036854775807
$x = $x + 1; // float(9.2233720368548E+18)
var_dump(is_int($x)); // false
var_dump(is_float($x)); // true
Это происходит тихо, без ошибок. Для работы с большими числами без потери точности используйте расширения bcmath или gmp.