遗忘悠剑

🍀 记录精彩的程序人生 开始使用

PHP intval 转换浮点数精度丢失问题

其实 intval 精度丢失问题,其他语言也是存在的。。。解决方法也很简单哈 ~

例如出错代码:

$n="19.99";
print intval($n*100); // prints 1998

解决方案一:转换成字符串再 intval

print intval(strval($n*100)); // 1999

解决方案二:使用 round 函数替代 floatval

echo round(19.99*100);// 1999

解决方案三:调整业务逻辑,不使用小数类型,直接使用 int

echo 1999;

.........哈哈哈哈.........


🐶 你走,我不送你。你来,风雨无阻,我去接你。

评论
留下你的脚步