Hap*_*per 2 php floating-point
php浮动有什么问题?
$v = 5.2 * 3;
if($v==15.6) {
echo 'Everything is fine =)';
} else {
echo 'Okay something is wrong :S';
var_dump($v); // float 15.6
}
Run Code Online (Sandbox Code Playgroud)
检查一下:
$v = 5.2 * 3;
if($v>15.6 AND $v<15.60000000001) {
echo 'We are doomed :S';
var_dump($v); // float 15.6
} else {
echo 'Everything is fine =)';
}
Run Code Online (Sandbox Code Playgroud)
我想它与内部表示或一些模糊的低级东西有关?如果是这种情况,我该如何解决这个问题?在用这个来计算真钱交易之前我应该知道的其他事情吗?
我确信这是重复的,所以我把它变成了CW
$v = 5.2 * 3;
if (bccomp($v, 15.6) === 0) {
echo 'Everything is fine =)';
} else {
echo 'Okay something is wrong :S';
var_dump($v); // float 15.6
}
Run Code Online (Sandbox Code Playgroud)
会给'一切都很好=)'
| 归档时间: |
|
| 查看次数: |
5307 次 |
| 最近记录: |