1. 文章
  2. 文章详情

PHP float类型使用注意

看下面程序输出什么?

第一段

$a = 9.45*100;
var_dump($a);
var_dump(intval($a));

执行代码,输出

float(945)
int(944)

第二段

$a = 9.49*100;
var_dump($a);
var_dump(intval($a));

执行代码输出

float(949)
int(949)

PHP 官方文档上给出来的解释是

PHP float类型的坑

所以上面的9.45 内部是9.449999999...,乘以100之后是944.9999999,对于float类型945,intval的话就944了。

参考:https://zhuanlan.zhihu.com/p/46340604

发表评论

登录后才能评论

评论列表(0条)