我编写了以下PHP代码段来显示一些奇怪的PHP行为。
<?php
$amount = "9.95";
var_dump($amount); // string(4) "9.95"
echo '<br />';
settype($amount, "float");
var_dump($amount); // float(9.95)
echo '<br />';
$amount = $amount * 100;
var_dump($amount); // float(995)
echo '<br />';
settype($amount, "int");
var_dump($amount); // int(994)
?>
我预计最后的输出是995,但结果是994.为什么会发生这种情况? 在线片段: http://codepad.org/tpnxwm0W