标签: php
PHP自动转换会溢出到浮点数的整数,是否有办法阻止它执行此操作并确保正确的包装行为?投掷& 0xFFFFFFFF没有任何帮助,在低位已经在浮动中被舍入后,它发生得太晚了。
& 0xFFFFFFFF
答案 0 :(得分:2)
您无法阻止浮点转换,但您可以通过查看结果是否为>来检测是否发生了溢出。 PHP_INT_MAX(或只是检查结果is_float!)
您可以使用允许任意长度整数的GMP扩展名,并在超过2 32时自行处理溢出