PHPの小数点の扱い方

小数点の計算をするときに失敗してしまったので、残しておく。
除算と剰余、round、floor、ceil関数を使ったときの結果は以下の通り。

// 除算
echo 17 / 3 . PHP_EOL;              // 5.6666666666667
// 剰余
echo 17 % 3 . PHP_EOL;              // 2
// round
echo round(17 / 3, 0) . PHP_EOL;    // 6
echo round(17 / 3, 2) . PHP_EOL;    // 5.67
// floor
echo floor(17 / 3) . PHP_EOL;       // 5
// ceil
echo ceil(17 / 3) . PHP_EOL;        // 6

除算だけだと、数値によって小数点が発生する。
剰余は、除算したときの余りを求める。
round関数は、第二引数に丸める対象の小数点第n位を指定する。
floor関数は、小数点以下を切り捨てる。
ceil関数は、小数点以下を切り上げる。

バージョン:5.6.28で確認。

コメント

タイトルとURLをコピーしました