PHPで符号付き整数の上限スレスレの挙動

覚えておくといつか役立つかも.気にしないで良いことがほとんどだけど(苦笑

$ php -r 'var_dump(2147483647);'
int(2147483647)
$ php -r 'var_dump(2147483647+0);'
int(2147483647)
$ php -r 'var_dump(2147483647+1);'
float(2147483648)
$ php -r 'var_dump(2147483647+1-1);'
float(2147483647)

PHPの場合,整数をオーバーフローしそうになると浮動小数点に自動的に切り替わります.
昔少しだけ真面目に調べたので興味がある人はどうぞ.

PHPの中を追いかける(変数値の解析など) - よくきたblog