Php 修正为0.2十进制数
可能重复:Php 修正为0.2十进制数,php,math,rounding,Php,Math,Rounding,可能重复: 基本上是一道数学题 $average_ppm = $total_points_given / $totalvalue; $average_ppm现在等于2.432608695652174,我不想显示这些数字,我只需要$average_ppm为2.43,所以是固定的2个小数点。我该怎么做 感谢您抽出宝贵的时间。如果您想要字符串输出,请使用//或使用//作为数值: $average_ppm = 2.432608695652174; echo sprintf("%.2f", $ave
基本上是一道数学题
$average_ppm = $total_points_given / $totalvalue;
$average_ppm现在等于2.432608695652174,我不想显示这些数字,我只需要$average_ppm为2.43,所以是固定的2个小数点。我该怎么做
感谢您抽出宝贵的时间。如果您想要字符串输出,请使用//或使用//作为数值:
$average_ppm = 2.432608695652174;
echo sprintf("%.2f", $average_ppm); // 2.43
$approx_average_ppm = round($average_ppm, 2);
echo $approx_average_ppm; // 2.43
echo floor($average_ppm, 2); // 2.43 , even if $average_ppm = 2.439
echo ceil($average_ppm, 2); // 2.44
我将使用:
您可以使用,或/取决于您希望数字四舍五入的方式
最适合您需要的是圆形:
$average_ppm = round($total_points_given / $totalvalue,2);
如果函数在第三个参数是精度的情况下可用,则可以使用这些函数
$average\u ppm=bcdiv($total\u points\u给定,$totalvalue,2)代码>如果您希望在。。。您可以通过以下方式完成:
当你得到一个像:2.400054846这样的数字,并且你使用round
你将得到2.4
如果您希望后面有2个数字,您可以使用number\u格式
这将输出2.40,但我不想重复这些数字,我只希望变量值为2个小数点?@user969729已更新;)如果要获取字符串,请使用sprintf
;如果要获取数字,请使用round
。两者都可以存储在可变值中,也可以打印出来。非常感谢!很好。
$average_ppm = round($total_points_given / $totalvalue,2);
number_format(2.43260869565217, 2); // 2.43