php浮点数

经过运算后的浮点数比较,不能直接用==,要用round。

$num1=22.05;
$num2=22.06;
var_dump($num2 - $num1);
var_dump(bcsub($num2,$num1,2));
var_dump($num2 - $num1 == 0.01);
var_dump(round($num2 - $num1,2) == 0.01);
var_dump(bccomp($num2 - $num1, 0.01,2));

 

/usr/local/var/www/aa.php:5:
double(0.009999999999998)
/usr/local/var/www/aa.php:6:
string(4) "0.01"
/usr/local/var/www/aa.php:7:
bool(false)
/usr/local/var/www/aa.php:8:
bool(true)
/usr/local/var/www/aa.php:9:
int(-1)

 

简单谈谈php浮点数精确运算

 

posted @ 2017-09-30 11:23  wahgon  阅读(200)  评论(0编辑  收藏  举报