《PHP应用:PHP和MySql中32位和64位的整形范围是多少》要点:
本文介绍了PHP应用:PHP和MySql中32位和64位的整形范围是多少,希望对您有用。如果有疑问,可以联系我们。
PHP学习
一个字节有8位,所以32位int型占用32位/8位=4个字节,64位int型占用64位/8位=8个字节.PHP学习
32位,64位无符号整型最大值:PHP学习
2^64-1 = 18446744073709551615PHP学习
2^32-1 = 4294967295PHP学习
32位,64位有符号整型最大值:PHP学习
(2^32)/2-1 = 2147483647PHP学习
(2^64)/2-1 = 9223372036854775807PHP学习
减1是因为整型包括0.PHP学习
64位Ubuntu 14.04,PHP_INT_MAX的值为9223372036854775807,跟MySQL中有符号的bigint型的最大值一样.PHP学习
32位Ubuntu 14.04,PHP_INT_MAX的值为2147483647,跟MySQL中有符号的int型的最大值一样.PHP学习
echo date('Y-m-d H:i:s', PHP_INT_MAX); 返回 2038-01-19 11:14:07PHP学习
echo strtotime('2038-01-19 11:14:07'); 返回 2147483647PHP学习
echo strtotime('2038-01-19 11:14:08'); 32位下返回空PHP学习
也就是说,32位系统上PHP的time()最大只能返回2038-01-19 11:14:07的时间戳.PHP学习
字段类型: `posted` int(10) unsigned NOT NULL DEFAULT '0'PHP学习
32位MySQL上(64位MySQL也是如此),插入一个比32位无符号int型最大值 2^32-1 = 4294967295 更大的数会发生错误:PHP学习
UPDATE `punbb`.`pb_topics` SET `posted` = '4294967296' WHERE `pb_topics`.`id` = 1;PHP学习
Warning: #1264 Out of range value for column 'posted' at row 1PHP学习
不过,MySQL可以用8个字节的bigint类型来存储64位整数.PHP学习
以上内容是小编给大家介绍的32位和64位的整形范围,希望对大家有所赞助.PHP学习
欢迎参与《PHP应用:PHP和MySql中32位和64位的整形范围是多少》讨论,分享您的想法,维易PHP学院为您提供专业教程。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/7534.html