很多站长朋友们都不太清楚php超大整数,今天小编就来给大家整理php超大整数,希望对各位有所帮助,具体内容如下:
本文目录一览: 1、 php超大数除法计算。 2、 求解 使用php将1000位的十进制大数转成二进制 3、 PHP最大整数是多少 php超大数除法计算。PHP计算大数值运算时会出错,当数字太大时,数值会变成科学计数.那怎么来进行PHP超大数值运算,包括加减乘除,幂运算,平方根,取模运算呢?
要解决科学计数的问题,只要赋值时加一对引号即可.
如
<?php
$n = '22222222222222222222222222220';
echo $n;
?>
如果不加引号,显示2.2222222222222E+28,加引号后显示22222222222222222222222222220
超大数值运算,包括加减乘除,幂运算,平方根,取模运算.
求解 使用php将1000位的十进制大数转成二进制下面的代码测试通过的,我只用几10位进行测试,理论上成千上万位结果也是正确的,供你参考,算法比较笨蛋(完全模仿人工的除2取余):
<?php
//超大整数(10进制)转换为二进制数
$n='12121111111141417908308410289576890247569807456709384756890743906790486790845';
//$n='15';//1111
//$n='257';//100000001
$r='';//结果
while ($n){
//$n整除2,商$m、余数$k
$k=0;
$m='';
do{
$k=$k*10 + substr($n,0,1);
if ($m!='' || $k>1) $m.=floor($k/2);
$k=$k % 2;
$n=substr($n,1);
//$r=$k . $r;
}while($n!='');
//echo "r=$r;m=$m\n";//break;
//下一轮除法
$n=$m;
$r=$k . $r;
}
echo $r;
?>
PHP最大整数是多少32位平台:2147483647 7fffffff,大约20亿;64位平台:大约9E18。PHP 不支持无符号整数
关于php超大整数的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。
查看更多关于php超大整数 php数字转大写的详细内容...