当前位置:  开发笔记 > 编程语言 > 正文

PHP中int的最大值是多少?

如何解决《PHP中int的最大值是多少?》经验,为你挑选了5个好方法。

忽略允许您处理非常大数字的特殊库,您可以在PHP中存储的最大int值是多少?



1> karim79..:

从PHP手册:

整数的大小取决于平台,尽管最大值约为20亿是通常的值(32位有符号).PHP不支持无符号整数.整数大小可以使用常量PHP_INT_SIZE确定,最大值可以使用自PHP 4.4.0和PHP 5.0.5以来的常量PHP_INT_MAX.

64位平台的最大值通常约为9E18,除了PHP之前的Windows,它总是32位.


@ karim79,我认为这是因为arch是64位,而不是AMD.=]
好吧,在amd64 linux上,现在很常见,它的9223372036854775807(2 ^ 63-1)
AMD64是AMD和英特尔目前使用的64位架构的一个名称.其他名称包括x64和Intel 64.正如strager所说,与AMD没有任何关系
这是很多数字 - 这是我第一个想到在购买专用服务器时选择AMD而不是英特尔的原因.:)
我的Windows XAMPP回声是2147483647.我有AMD Athlon X2

2> thomasrutter..:

PHP的32位版本:

整数可以从-2,147,483,6482,147,483,647(〜±20亿)

PHP的64位版本:

整数可以从-9,223,372,036,854,775,8089,223,372,036,854,775,807(〜±9 quintillion)

数字是包容性的.

注意:一些64位版本曾经使用过32位整数,特别是旧的Windows版本的PHP

超出这些范围的值由浮点值表示,这些范围内的非整数值也是如此.解释器将根据计算的结果值是否不能表示为整数,自动确定何时需要切换到浮点.

PHP不支持"无符号"整数,将所有整数的最大值限制为"有符号"整数的范围.



3> cletus..:

PHP int的大小取决于平台:

整数的大小取决于平台,尽管最大值约为20亿是通常的值(32位有符号).PHP不支持无符号整数.整数大小可以使用常量PHP_INT_SIZE确定,最大值可以使用自PHP 4.4.0和PHP 5.0.5以来的常量PHP_INT_MAX.

PHP 6增加了"longs"(64位整数).


我没有得到这些downvotes ..这是一个非常好的答案,即使有一些额外的信息投入.+ 1来纠正它.
该答案最初显示为“依赖于平台”(不依赖于)。它还(仍然)声称在PHP 6之前不存在64位整数。这是错误的。

4> Julien CROUZ..:

(有点晚了,但可能有用)

只信任PHP_INT_MAX和PHP_INT_SIZE,这个值会因你的arch(32/64位)和你的操作系统而异...

任何其他"猜测"或"提示"都可能是错误的.



5> nickf..:

啊,我发现它:2 32 - 1(2147483647)

http://au2.php.net/int

整数溢出

如果PHP遇到一个超出整数类型范围的数字,它将被解释为浮点数。同样,导致数字超出整数类型范围的运算将改为返回浮点数。


这就是32位平台上的情况。还请考虑许多人在64位平台上运行服务器。
推荐阅读
Life一切安好
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有