如何在PHP中添加两个大的分数

时间:2013-06-22 09:17:44

标签: php math

我想添加以下数字

$res = 0.000000002 + 0.000000002 + 0.000000002;

我得到了这样的结果

4.2E-8

任何人都可以解释,如何获得0.000000006

感谢

5 个答案:

答案 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;

请试一试。