10 進数の例:
PHP は小数点以下 2 桁を保持して四捨五入します
$n=0.1265489;echo sprintf("%.2f", $n); // 0.13
$n% をフォーマットするために sprintf 関数を使用していることがわかります。2f がターゲットのフォーマットで、2 は f が表す 2 桁を意味しますfloat (浮動小数点型) 3 番目は 10 進数であり、6 は四捨五入されます
別の例を見てください
$n=0.1265489echo substr(sprintf("%.3",$n),0,-1);// 0.12
echo ceil(4.1); // 5echo ceil(9.999); // 10
Round関数
PHPマニュアルのRound関数については、 Float Round (Float $ Val [, in t $精度 = 0 [, int $model = PHP_ROUND_HALF_UP ]] ) 指定された精度 (小数点以下の小数点以下の桁数) に従って val を丸めた結果を返します。精度は負またはゼロ (デフォルト) にすることもできます。 round の最初のパラメータはデータ ソース、2 番目のパラメータは保持する小数点以下の桁数、次のパラメータ (たとえば、2 を入力した場合、3 番目のパラメータが最後の桁になります) が四捨五入されます。これは負の数値であり、データから取得されます。ソースの最後の桁から 0 までの対応する長さをカウントし、最後の桁を四捨五入します。たとえば、round(123456,-2) は 6 から数えて 123456 になります。両方の桁をゼロにし、最後の桁は 5 (後ろから) 最初の桁は 6、最後の桁は 5) を四捨五入して、出力は 123500 になります