我有两个输入
min, max
在min=32和max=46的情况下,我希望PHP自动将值精确到5/10,即在这种情况下min=30和max=50?
但在这种情况下,如果最小值=35或40且最大值=40或45,则无需进行四舍五入
如何在PHP中实现这一点?
顺便说一句,系统只处理整数值,上面的值只是示例。它需要适用于从0到无穷大的一系列数字。所以4会四舍五入到0,6到10…等等…
function round_to_10($n) {
return round($n / 10) * 10;
}
php> echo round_to_10(32)
30
php> echo round_to_10(46)
50
如果你把这个数字乘以2,你可以把它四舍五入到10,然后再除以2。
function round_five($num) {
return round($num*2,-1)/2;
}
$nums = array(32,46,35,40);
foreach($nums as $num) {
printf("%s: %s'n",$num,roundFive($num));
}
以上将返回
32: 30
46: 45
35: 35
40: 40