PHP意外的运营商评估

时间:2014-09-18 10:51:13

标签: php operators

我遇到了这个奇怪的PHP运算符评估,我看不出为什么会发生这种情况

$By=0.52;
$Vi=38;
$Bx= 37.48;
$Zi=0;
var_dump($By >= ($Vi-$Bx-$Zi));

我得到了

boolean false

但是从

开始
$By = 0.52
$Vi-$Bx-$Zi = 0.52

所以$By >= ($Vi-$Bx-$Zi) 应该是true,因为运营商是"> =" 如在php doc $a >= $b Greater than or equal to TRUE if $a is greater than or equal to $b.

为什么会这样?

var dump
array(7) {
  ["$Bx"]=>
  float(37.48)
  ["($Vi-$Zi)"]=>
  int(38)
  ["$By"]=>
  float(0.52)
  ["($Vi-$Bx-$Zi)"]=>
  float(0.52)
  ["$Bx<($Vi-$Zi)"]=>
  bool(true)
  ["$By>=($Vi-$Bx-$Zi)"]=>
  bool(false)
  ["($Bx<($Vi-$Zi) && $By>=($Vi-$Bx-$Zi))"]=>
  bool(false)
}

0 个答案:

没有答案