PHP入門 数学関数 浮動小数点を丸める(round関数)

浮動小数点を丸める方法を解説しています。

構文:round関数

float round(float $val [, int $precision = 0 [, int $mode = PHP_ROUND_HALF_UP]])
$val対象の浮動小数点
$precision小数点以下の桁数
$modeモード

浮動小数点を丸めるには、「round」関数を使います。この関数は、小数点以下を丸めた値を返します。オプションの第2引数に桁数を指定した場合、その桁数に丸めた値を返します。桁数の負の値、または「0」(既定値)にすることもできます。PHP5.3.0以降では、オプションの第3引数に丸め方(モード)を指定することができます。第3引数に指定できる定数は、次のとおりです。

モード

定数説明
PHP_ROUND_HALF_UP1端数を切り上げる
PHP_ROUND_HALF_DOWN2端数を切り捨てる
PHP_ROUND_HALF_EVEN3端数を偶数に丸める
PHP_ROUND_HALF_ODD端数を奇数に丸める

<?php
//小数点を丸める
echo round(3.4),"<br>";
echo round(3.5),"<br>";

//丸める桁数を指定する
echo round(3.6,0),"<br>";
echo round(1.95583,2),"<br>";
echo round(1241757, -3),"<br>";
echo round(5.045, 2),"<br>";
echo round(5.055, 2),"<br>";

echo round(9.5. 0, PHP_ROUND_HALF_UP),"<br>";
echo round(9.5. 0, PHP_ROUND_HALF_DOWN),"<br>";
echo round(9.5. 0, PHP_ROUND_HALF_EVEN),"<br>";
echo round(9.5. 0, PHP_ROUND_HALF_ODD),"<br>";
実行結果
実行結果