Потому что в таком случае имеет место undefinded behavior.
The size of an integer is platform-dependent, although a maximum value of about two billion is the usual value (that's 32 bits signed). PHP does not support unsigned integers.
If you specify a number beyond the bounds of the integer type, it will be interpreted as a float instead. Also, if you perform an operation that results in a number beyond the bounds of the integer type, a float will be returned instead.
PS: вообще-то вопрос был - зачем. Т.е. требовалось описать задачу, на кой ляд это кому-то может быть нужно. Ибо не представляю, где это может быть важно.