【发布时间】:2015-09-08 07:25:34
【问题描述】:
我有一个表格,它显示了一个算术运算,其中包含来自数据库的值。 在数据库中,所有值都是 FLOAT 类型。 我的算术运算是:
$difference = $row['variable1']+$row['variable2']-$row['variable3']-$row['variable4'];
<td><?php echo (round($difference, 2)) ?></td>
所以。我的问题是我插入的一些值的计算。 例如:
variable1=10
variable2=10.08
variable3=10
variable4=10.08
正常它必须给出差异=0;但它显示差异= -0; 在每种情况下,如果我使用带有 xx.07、xx.08、xx.09 的值,它会给我一个结果 = -0;值不超过 xx.07 时不会发生这种情况。
示例:
variable1=10; variable2=10.06; variable3=10;variable4=10.06; The result = 0;
如果我不四舍五入,它会给出如下结果:-5.68434188608E-14;
我尝试在计算之前对变量进行四舍五入,我尝试在计算中使用"()",我尝试在操作中直接对变量进行四舍五入,因为我认为在<之后需要超过2个值,>(FLOAT类型)。
我在插入数据库时尝试对值进行四舍五入,但它给我插入输入字段时出错,因为它有超过 4 个变量(未在差异操作中使用)。
感谢帮助我解决这个问题,我真的不明白为什么会这样。
【问题讨论】: