在 PHP 中使用 long int

2022-08-30 23:12:42

我正在尝试这个,但无法存储大价值

$var = rand(100000000000000,999999999999999);
echo $var; // prints a 9 digit value(largest possible)

如何获得所需的价值?


答案 1

手册中:

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

...

如果 PHP 遇到超出整数类型边界的数字,它将被解释为浮点数。此外,如果运算产生的数字超出整数类型的边界,则将返回浮点数。

BC数学GMP是操纵这种限制的(唯一?)方法。


答案 2

PHP 整数通常为 32 位。其他封装提供更高精度的输入:http://php.net/manual/en/language.types.integer.php


推荐