加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > PHP教程 > 正文

傻,无法弄清楚PHP圆了下来:(

发布时间:2020-12-13 16:28:49 所属栏目:PHP教程 来源:网络整理
导读:我有一个小问题,它可能在某个地方很傻,但我仍然拥有它:) 所以问题是: 通过做这个 round(615.36*0.10,2,PHP_ROUND_HALF_DOWN); 我预计结果将是61.53,但它是61.54. phpVersion = 5.3.2 谁能帮我解决这个问题? 谢谢. PHP_ROUND_HALF_DOWN将围绕一半 – 即0.00
我有一个小问题,它可能在某个地方很傻,但我仍然拥有它:)

所以问题是:

通过做这个

round(615.36*0.10,2,PHP_ROUND_HALF_DOWN);

我预计结果将是61.53,但它是61.54.

phpVersion = 5.3.2

谁能帮我解决这个问题?
谢谢.

PHP_ROUND_HALF_DOWN将围绕一半 – 即0.005部分.

如果你有61.535,那么使用PHP_ROUND_HALF_DOWN会得到61.53 – 而不是你应该通过常规舍入获得的61.54.
Basicall,.005的一半被四舍五入.

但是61.536不是一半:.006超过.005;所以舍入该值得到61.54.

在你的情况下,你可以将值乘以100,使用floor()函数,并将结果除以100 – 我想它会给你你期望的:

$value = 61.536;
$value_times_100 = $value * 100;
$value_times_100_floored = floor($value_times_100);
$value_floored = $value_times_100_floored / 100;
var_dump($value_floored);

给我 :

float(61.53)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读