2013-05-13 69 views
0

的我有以下代码损失意义PHP一轮

$suma += round(1*43067.8000,2); 

$suma += round(-1*18875.1800,2); 

$suma += round(-1*15293.9700,2); 

$suma += round(-1*8898.6500,2); 

print $suma; 

输出是3.6379788070917E-12

为什么当数相加之前圆润的答案是不为0?

+1

请参阅 - http://stackoverflow.com/questions/3726721/php-math-precision。 Round返回一个浮点数... – Buggabill 2013-05-13 19:13:30

回答

2

Round仍返回一个浮点数。因为它是一个浮点数,所以总会有非常小的错误。在这种情况下,这会导致您的答案不同于0.