如何在PHP中使用64位整数?
似乎不是通过配置文件,而是可能是编译时选项,并且取决于平台。
本机64位整数需要64位硬件和PHP的64位版本。
在32位硬件上:
$ php -r 'echo PHP_INT_MAX;'
2147483647
在64位硬件上:
$ php -r 'echo PHP_INT_MAX;'
9223372036854775807
UPDATE:现在可以了(在Windows 8.1 Amd Quad Core上测试。)>
注意,即使硬件和PHP都是64位,Windows上的PHP也不支持64位整数。有关详情,请参见this link:
在Windows x86_64上,PHP_INT_MAX为2147483647。这是因为在基本的C代码,长为32位。
但是,x86_64上的linux使用64位长,因此PHP_INT_MAX将是9223372036854775807。
PHP int的大小取决于平台。有一个名为unpack()的函数,该函数实际上允许将不同类型的数据从二进制字符串转换为PHP变量。存储为64位似乎是将其存储为字符串的唯一方法。
现在您应该获得PHP 7-完全一致的64位支持。不仅整数,而且所有fstat,IO等也是如此。Windows上的PHP 7是真正的64位。