2015-10-16 75 views
-3

经测试,在WAMP服务器与PHP 5.5.12 这回始终PHP 5.5.12 ROUND回报始终

echo round(3.51,0,PHP_ROUND_HALF_DOWN);// 4 
echo round(3.51,0,PHP_ROUND_HALF_UP);// 4 

为什么?

+0

你期望什么? 3.5? – Szenis

+0

我期待结果3 – Daniele

回答

2

round()舍入到最接近的整数。 3.51更接近43,所以它总是四舍五入。

您使用的选项仅影响当输入的小数部分恰好为.5时发生的情况,因为这与这两个整数等距。

如果您始终想要舍入,请使用floor()而不是round()。相反,如果要整理,请使用ceil()。许多编程语言使用这些具有相似含义的相同名称 - 它们来自基础数学。