2012-05-23 111 views
1

字符串我不能得到$的數據,我轉換成從這個整數的精確值的整型轉換,混亂在PHP

<?php 

$data = '9999999999'; 
echo $datan = (int) $data; 

?> 

我如何得到$數據的精確值$打探

+0

我越來越2147483647下,而不是9999999999 – Thompson

+0

您能得到什麼? – xdazz

+0

爲什麼你需要將它轉換爲整數?在大多數情況下,你可以在PHP中的一樣好,用純整數與字符串的數字工作(不管是好事還是壞事是有爭議的)。 – JJJ

回答

2

從PHP文檔:

的整數的大小是依賴於平臺的,雖然約兩十億的最大值是通常的值(這是32位帶符號的)。 64位平臺的最大值通常約爲9E18。 PHP不支持無符號整數。可以使用恆定PHP_INT_SIZE使用恆定PHP_INT_MAX最大值自PHP 4.4.0和5.0.5 PHP來確定整數大小和。

http://php.net/manual/en/language.types.integer.php

0

檢查系統的PHP_INT_MAX

如果您得到2147483647,這意味着您的系統中有PHP_INT_MAX2147483647(32位有符號)。

+0

是的,它是一樣的2147483647 – Thompson

0

檢查你PHP_INT_MAX。它可能比9999999999