相关疑难解决方法(0)

PHP浮点计算的准确性

$fooValue = 100.68;
$cowValue = 100.67;

$diffValue = $fooValue - $cowValue;
if($diffValue <= 0.01) {
    echo("success");
} else {
    echo("error");
}
Run Code Online (Sandbox Code Playgroud)

这将显示"错误".

我知道用Java做什么.但是我不擅长PHP,特别是用这个计算东西.

请帮帮我.我是说如何成功呢?

php

4
推荐指数
1
解决办法
1731
查看次数

php整数和浮点数比较不匹配

我有以下代码

$amount1 = 7299;
$amount2 = 72.9875;

$amount2_in_cents = round($amount2, 2) * 100;

if ($amount1 != $amount2_in_cents) {
    echo "Amount $amount1 != $amount2_in_cents\n";

    var_dump($amount1);
    var_dump($amount2_in_cents);    

} else {
    echo "Amounts matched";
}
Run Code Online (Sandbox Code Playgroud)

这是输出

Amount 7299 != 7299
int(7299)
float(7299)
Run Code Online (Sandbox Code Playgroud)

现在我意识到浮点数和整数是不同的,但考虑到四舍五入,我希望这两个值匹配.我通过转换为int来解决它.

所以我的问题是为什么这种比较不能像我预期的那样工作(两个值匹配)?

php

4
推荐指数
2
解决办法
1万
查看次数

标签 统计

php ×2