如果为正,则向下舍入为负? 我有
$rounded =1000
39528,65 round should be --> 39000
AND
-30965,77 --> -31000
答案 0 :(得分:4)
答案 1 :(得分:3)
尝试使用:
$rounded = 1000;
foreach(array(39528.65, -30965.77) as $num) {
echo $num,' -> ', floor($num/$rounded)*$rounded,"\n";
}
<强>输出:强>
39528.65 -> 39000
-30965.77 -> -31000
答案 2 :(得分:0)
您可以使用abs获取绝对值,如下所示:
round(abs(-30965,77))
如果您的号码是否定的,abs
将返回正数。否则它将返回正数。然后,您可以使用round
(以您所需的精度)来舍入您的值。
答案 3 :(得分:0)
直接int cast似乎可以完成这项工作,如果你的向上/向下舍入表示楼层/ ceil
echo (int)( 8.5/8); // 1 = floor( 8.5/8)
echo (int)(-8.5/8); // -1 = ceil(-8.5/8)