只是有点卡住,试图找到正确的函数使用:
$number = "4.999";
echo number_format($number, 2); //5.00
我们希望它显示为4.99
-我们应该使用什么PHP函数不会四舍五入任何东西,只是纯粹地将小数点后的数字限制为2 ?
use printf
:
printf('%.2f', $number);
(%.2f
打印带有2位小数的浮点数)
edit我第一次读错了你的问题。您所要求的是将数字四舍五入到小数点后两位,然后显示它:
$number = floor($number*100)/100;
printf('%.2f', $number);
这实际上是对这个函数的滥用,但它可以处理字符串,并且不会受到浮点数转换的不准确性的影响,也不会四舍五入:
echo bcadd("4.999", "0", 2);
http://www.php.net/manual/en/function.bcadd.php 或简单的:
echo substr($num, 0, strpos($num, '.') + 3);