. . . . 정수 정수에는 범위가 있으며, 이 범위는 플랫폼 버전에 따라 32비트(최대값: 2^31 - 1) 및 64비트(최대값: 2^63 - 1)의 범위와 다릅니다. 이때 범위를 벗어난 숫자는 float 유형으로 해석되므로 is_int() 함수 판단은 false가 됩니다. 다음은 64비트 정수 오버플로입니다.
정수의 단어 길이는 플랫폼에 따라 다르지만 일반적인 최대값은 약 20억(32비트 부호 있음)입니다. 64비트 플랫폼의 최대값은 일반적으로 약 9E18입니다. 단, Windows의 PHP 7 이전 버전은 항상 32비트였습니다. PHP는 부호 없는 정수를 지원하지 않습니다. 정수값의 단어 길이는 PHP_INT_SIZE 상수로 표현할 수 있습니다. PHP 4.4.0, PHP 5.0.5부터는 PHP에서 최대값을 PHP_INT_MAX, 최소값을 PHP_INT_MIN 상수로 표현할 수 있습니다. 7.0.0 이상 버전.
그래서 부호 있는 32비트 정수의 경우 2^31=2147483648(약 20억)는 10자리 숫자이므로 말씀하신 상황에서는 9자리 이상이 false를 반환하는 것이 사실입니다.
. . . .
으아아아정수 정수에는 범위가 있으며, 이 범위는 플랫폼 버전에 따라 32비트(최대값: 2^31 - 1) 및 64비트(최대값: 2^63 - 1)의 범위와 다릅니다. 이때 범위를 벗어난 숫자는 float 유형으로 해석되므로 is_int() 함수 판단은 false가 됩니다. 다음은 64비트 정수 오버플로입니다.
PHP 공식 웹사이트 매뉴얼에 따르면:
그래서 부호 있는 32비트 정수의 경우
2^31=2147483648
(약 20억)는 10자리 숫자이므로 말씀하신 상황에서는 9자리 이상이 false를 반환하는 것이 사실입니다.