次の動作を説明できません。(int) を使用して非常に大きな整数 (PHP によって float として処理される) をキャストすると、次の結果が得られます。
<?php
print (int)9223372036854775800; // returns: 9223372036854775800
echo "<br />";
print (int)11702667999999911110; // returns: -6744076073709639680
echo "<br />";
print (int)17999997999999911110; // returns: -446746073709639680
echo "<br />";
print (int)18400997999999911110; // returns: -45746073709639680
echo "<br />";
print (int)41702667999999999990; // returns: 0
?>
PHP がこれらの値を返すのはなぜですか?