2011-11-24 59 views

回答

1

使用sprintf如果你想有一個字符串輸出,或round/floor/ceil的數值:

$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 
+0

,但我不想回應這些號碼,我只想將變量值設置爲2個小數點? – user969729

+0

@ user969729已更新;)如果要獲取字符串,請使用'sprintf',如果要獲取數字,請使用'round'。兩者都可以存儲在變量值中,也可以打印出來。 – phihag

+0

非常感謝!工作正常。 – user969729

1

您既可以使用sprintfroundfloor/ceil,具體取決於您希望數字舍入的方式。

最適合您的需求將是一輪:

$average_ppm = round($total_points_given/$totalvalue,2); 
0

,其中第三個參數是精密

$average_ppm = bcdiv($total_points_given, $totalvalue, 2);

1

如果你願意,你可以使用bcmath功能(如果可用)在...之後總是有2個號碼number_format

number_format(2.43260869565217, 2); // 2.43 

當你有一個數字,如:2.400054846並使用round你會得到2.4 ,如果你用2號想它背後可以使用number_format這將輸出2.40

相關問題