[請益] integer overflow
// it's true also for hexadecimal specified integers between 2^31 and 2^32-1:
var_dump( 0xffffffff );
// output: float(4294967295)
// this doesn't go for hexadecimal specified integers above 2^32-1:
var_dump( 0x100000000 );
// output: int(2147483647)
$million = 1000000;
$large_number = 50000 * $million;
var_dump($large_number);
// output: float(50000000000)
這是從官方的手冊來的
當超過 integer 的範圍 會使用 float
可是 var_dump( 0x100000000 ); 這個地方不是已經超過 integer 的範圍
為何出來的結果不是 float
(雖然它有英文說明 可是我看不懂)
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 218.165.132.231
PHP 近期熱門文章
PTT數位生活區 即時熱門文章