需要像intVal()这样的东西,但需要更大的数字,例如:100001416147426。
在php中有这样的功能吗?找不到它。
答案 0 :(得分:2)
你应该使用BC Math,它被设计为PHP的任何大小的数字。
BC Math extensions提供several mathematic functions,例如:
bcadd
添加两个任意精确数字bccomp
- 比较两个任意精度数bcsqrt
获取任意精度数的平方根在PHP文档站点上, Charles 有一个small code example来围绕一个长数字!
答案 1 :(得分:1)
考虑
$x = (double) "100001416147426";
var_dump($x);
输出:
float(1.0000141614743E+14)
答案 2 :(得分:1)
这个提示是分析64位的解析器,以便从脚本中读出要编译的数字。
但除非你运行php x64,否则这将毫无用处。另外,你必须用big_number组件构建它。一旦进入x64环境,当超过32位int时,intval将自动扩展为long。