为了账号安全,请及时绑定邮箱和手机立即绑定

一个PHP浮点数转整数的奇怪问题

一个PHP浮点数转整数的奇怪问题

PHP
墨色风雨 2019-03-18 15:24:12
<?php $a = round(96800 / 365, 2) * 1000 / 10; var_dump($a); $a = intval($a); var_dump($a); $b = round(96800 / 365, 2) * 100; var_dump($b); $b = intval($b); var_dump($b); 计算结果: float(26521) int(26521) float(26521) int(26520)
查看完整描述

2 回答

?
守着一只汪

TA贡献1872条经验 获得超3个赞

一点都不奇怪啊,这种情况经常发生。

float a = 0.999999999,a为1,但是将a强制转换为整数的时候,结果为0。主要是转整数的时候是截断

查看完整回答
反对 回复 2019-03-18
?
绝地无双

TA贡献1946条经验 获得超4个赞

浮点数都是约等于,他的精度取决于扩大的倍数。例如1+3=4; 但是0.1+0.2就不等于0.3

查看完整回答
反对 回复 2019-03-18
  • 2 回答
  • 0 关注
  • 788 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信