php – 整数类型转换问题
情况#1:我有以下代码输出正确的数字
<?php $integer = 10000000000; $array = array($integer); print_r($array[0]); //output = 1000000000 ?> 情况#2:但是当我明确地将相同的数字类型转换为整数时,它会给出不同的输出 <?php $integer = (int)10000000000; $array = array($integer); print_r($array[0]); //output = 1410065408 ?> 情况#3:如果我将数字减去一个0并输入它,那么它返回正确的数字 <?php $integer = (int)1000000000; $array = array($integer); print_r($array[0]); //output = 1000000000 ?> 为什么它没有在CASE#2中产生正确的输出?
您最有可能超过平台上int的最大值.
从Official PHP Doc:
对于32位平台: 整数可以从-2147483648到2147483647 对于64位平台: 整数可以是-9223372036854775808至9223372036854775807 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |