我想添加以下数字
$res = 0.000000002 + 0.000000002 + 0.000000002;
我得到了这样的结果
4.2E-8
任何人都可以解释,如何获得0.000000006
感谢
答案 0 :(得分:2)
您应该得到以下结果:
echo 0.000000002 + 0.000000002 + 0.000000002;
6.0E-9
这意味着你没有告诉我们真相。
获取4.2E-8
的一种方法是添加0.00000002 + 0.00000002 + 0.000000002;
(我从其中两个中移除了零)。
答案 1 :(得分:2)
//Try using
echo number_format($res,10);
答案 2 :(得分:2)
尝试
$res = 0.000000002 + 0.000000002 + 0.000000002;
printf("%0.9f",$res);
或
print(number_format($res,9));
输出
0.000000006
答案 3 :(得分:0)
请试一试。
$res = 0.000000002 + 0.000000002 + 0.000000002;
echo number_format($res, 9, '.', '');die;
这里9没有描述你想要显示多少位数。
答案 4 :(得分:-1)
$res = 0.0000000002 + 0.0000000002 + 0.0000000002;
echo exp2dec($res);
function exp2dec($number) {
preg_match('/(.*)E-(.*)/', str_replace(".", "", $number), $matches);
$num = "0.";
while ($matches[2] > 0) {
$num .= "0";
$matches[2]--;
}
return $num . $matches[1];
}
die;
请试一试。