在PHP中将String转换为int

时间:2012-09-07 17:10:45

标签: php string int

    $date = "1346706576967";  // miliseconds
    $newDate = (int) $date;
    echo $newDate;

我得到“2147483647”作为$ newDate。

我只是想将变量从String 1346706576967转换为int 1346706576967 - 这怎么可能?

4 个答案:

答案 0 :(得分:5)

2147483647是一个整数可以容纳的最大值。您可以在此使用浮点数,因为浮点数可以精确地保存最大值为10000000000000的整数值

答案 1 :(得分:2)

因为这是最大大小,PHP中的整数可以有。 您需要一个特定的PHP库来处理更大的整数,如BCMath或GMP,或者只是将其转换为浮点数。

答案 2 :(得分:1)

可能的转换,

$input => 1346706576967
(integer)$input => 2147483647
intval($input) => 2147483647
$input*1 => 1346706576967
settype($input, "integer") => 1346706576967

http://phpconvert.com/online/

答案 3 :(得分:0)

您可以使用隐式转换正确转换它:

$date = "1346706576967";  // miliseconds
$newDate = 0+$date; // float(1346706576967)
$newDate = (int) $date; // int(2147483647)