PHP Division导致自动向上舍入的数字

时间:2013-11-27 14:13:36

标签: php rounding division

我有一个简单的分工:

72/193

Excel给了我

的结果

0.373056994818653

虽然PHP将其四舍五入到

0.373056994819

我的问题是 - 我怎样才能让PHP给出确切的数字而不是舍入的数字呢?

2 个答案:

答案 0 :(得分:1)

这不是一个“确切”的问题,而是关于精确性。 Wolfram Alpha的答案准确度要高得多。

您需要更改precision of your php configuration以适应小数点后所需的单位数。我找不到PHP提供的最大精度,但我确信有一个限制。

答案 1 :(得分:1)

确切的数字是无限小数。你永远无法获得完整的绝对值,因为这需要无限的记忆,这是我们遗憾无法访问的东西。

查看bcdiv,它允许非常长的整数和浮点数

但是,对于所有实际意图和目的,如果两个数字在1 * 10 -8 左右,你应该能够认为它们相等

你可以这样做:

if(abs($num1-$num2)<=1e-8){
    echo "They are equal";
}
相关问题