PHP比较双倍评估为假

时间:2014-09-25 09:19:44

标签: php if-statement evaluation

我遇到了一个问题,我搜索了这个问题,找不到与此问题相关的任何内容。我只是添加了两个花车,但每次都在评估假。

下到代码:

$total = (double)$db['total'];
$postage = (double)$db['postage'];
if (($total - $postage) == 5.95){
  $abc = 1;
}elseif(($total - $postage) == 7.95){
  $abc = 2;
}elseif(($total - $postage) == 10.95){
  $abc = 3;
}else{
  $abc = 0;
}

然后结果:

echo $abc;  //outputs 0

转换为双倍之前的总计和邮资类型

echo gettype($db['postage'])." ".gettype($db['total']); // Outputs: string string

施法后的总数和邮资

echo gettype($postage)." ".gettype($total); // Outputs: double double

最后是总邮费的结果

echo ($total - $postage); // outputs: 7.95

我尝试过使用和不使用强制转换,并尝试使用引号中的==之后的值,但似乎根本无法找到问题。有人能指出我正确的方向吗?这可能是我在这里失踪的小事。

0 个答案:

没有答案