在PHP中为浮点数设置精度
我从数据库中得到一个数字,这个数字可能是float或int。
我需要将数字的小数精度设置为3,这会使数字不超过(关于小数)5.020或1518845.756。
使用PHP
round($number, $precision)我看到一个问题:
四舍五入数字。我需要一个仅将小数点缩短而不改变其值的函数,而这些值round( )似乎不遵循。
回答:
您可以number_format()用来实现以下目的:
echo number_format((float) $number, $precision, '.', '');这将转换1518845.756789为1518845.757。
但是,如果您只想将小数位数缩短到3,而 ,则可以执行以下操作:
$number = intval($number * ($p = pow(10, $precision))) / $p;乍一看可能令人生畏,但是这个概念确实很简单。您有一个数字,将其乘以10
3(变为1518845756.789),将其强制转换为整数,以便删除小数点后3位(变为1518845756)后的所有内容,然后将结果除以10
3(变为1518845.756)。
以上是 在PHP中为浮点数设置精度 的全部内容, 来源链接: utcz.com/qa/421994.html

