こんにちは。
季節の変わり目は体調を崩しやすいので気をつけてくださいね、裕です!
プログラミングをしているときに「四捨五入」が必要になることがあります。
そこで今回はPHP初心者に向けて、
数値を四捨五入する round
について解説します。
ぜひ、読んでみて理解を深めてみて下さいね。
目次
roundの引数を解説
まずroundの基本的な書き方です。
round (float $val [, int $precision =0 [ int $mode = PHP_ROUND_HALF_UP ] ] ): float
val
丸める(四捨五入する)数字。(必須)
precision
オプションで指定する丸める(四捨五入する)桁数。
初期値:0
mode
定数を使い丸めモードを設定します。
返り値
precisionで与えられた精度に丸められた値をfloatで返します。
roundの書き方
基本的な検索の仕方
<?php
var_dump(round(1.1));
var_dump(round(1.2));
var_dump(round(1.3));
var_dump(round(1.4));
var_dump(round(1.5));
var_dump(round(1.6));
var_dump(round(1.7));
var_dump(round(1.8));
var_dump(round(1.9));
var_dump(round(1.0));
?>
結果は下記になります。
float(1) //1.1
float(1) //1.2
float(1) //1.3
float(1) //1.4
float(2) //1.5
float(2) //1.6
float(2) //1.7
float(2) //1.8
float(2) //1.9
float(1) //1.0
第二引数を指定しない場合、小数点以下は0で丸められました。
小数点以下の桁数を指定する
第二引数を指定します
<?php
$num = 153.548;
var_dump(round($num, 3));
var_dump(round($num, 2));
var_dump(round($num, 1));
var_dump(round($num, 0));
var_dump(round($num, -1));
var_dump(round($num, -2));
var_dump(round($num, -3));
?>
結果は下記になります。
float(153.548) //3の場合 小数点以下第3位まで
float(153.55) //2の場合 小数点以下第2位まで
float(153.5) //1の場合 小数点以下第1位まで
float(154) //0の場合 小数点なし
float(150) //-1の場合 整数第1位の位
float(200) //-2の場合 整数第2位の位
float(0) //-3の場合 整数第3位の位
第二引数は正の数の場合、小数点以下の方向に桁数が増え、
負の数の場合、小数点以上の方向の数字を丸め(四捨五入)ます。
第三引数を使って四捨五入する
<?php
$num = 10.5;
var_dump(round($num, 0,PHP_ROUND_HALF_UP));
var_dump(round($num, 0,PHP_ROUND_HALF_DOWN));
var_dump(round($num, 0,PHP_ROUND_HALF_EVEN));
var_dump(round($num, 0,PHP_ROUND_HALF_ODD));
?>
結果は下記になります。
float(11) //PHP_ROUND_HALF_UP 端数が5(半分)の場合、 数値をゼロから離れる方向に丸めます。
float(10) //PHP_ROUND_HALF_DOWN 端数が5(半分)の場合、 数値 をゼロに近づく方向に丸めます。float(10) //PHP_ROUND_HALF_EVEN 端数が5(半分)の場合、数値 をもっとも近い偶数に丸めます。
float(11) //PHP_ROUND_HALF_ODD 端数が5(半分)の場合、数値 をもっとも近い奇数に丸めます。
このように少し複雑の条件も第三引数に定数を利用することにより設定することができます。
まとめ
いかがでしたか?
今回は数値を四捨五入する
「round」について、解説しました。
これで数値を四捨五入することができますね。
是非使ってみて下さい。