亲爱的Stackoverflowers,
我想知道您可以针对以下问题提出哪些解决方案:
这就是我所拥有的:
13.90
5.03
7.06
2.51
这就是我想要的:
13.90
5.05
7.05
2.50
基本上:我想在商业基础上使用货币。最后一个小数可能只舍入到5或10(向第一个数字加1)或向下舍入到5或0。
答案 0 :(得分:9)
舍入到最近x
的通用公式:
round(input / x) * x
您的用例示例:
round(5.03 / .05) * .05 = round(100.6) * .05 = 101 * .05 = 5.05
答案 1 :(得分:5)
<?php
$int = 5.03;
$int *= 20;
$int = ceil($int);
$int /= 20;
echo $int;
您只需要通过乘以数字来定义舍入的分辨率(稍后再将其除以)。这是一个简单的数学问题。