PHPで切り捨て・切り上げ・四捨五入をする

シェアする

フリーランスエンジニアの収入例を見てみる→ フリーエンジニアの案件なら、レバテックフリーランス

今回の記事では、PHPを使用して、四捨五入・切り上げ・切り捨てをする方法について紹介します。

round関数

round( 数値 [, 桁数 ] )
数値を四捨五入します。
桁数を省略した場合、小数点以下を四捨五入します。
桁数が、正の数の場合、小数点以下の桁数を表します。
桁数が、負の数の場合、四捨五入する整数の桁数を表します。
返り値は、四捨五入した数値を返します。
整数値と小数点の順位を指定して四捨五入する方法

round関数は、数値を四捨五入する関数です。実際のプログラムの例を示すと下記のような結果が出ます。

<?php
echo round(3.4);         // 3
echo round(3.5);         // 4
echo round(3.6);         // 4
echo round(3.6, 0);      // 4
echo round(1.95583, 2);  // 1.96
echo round(1241757, -3); // 1242000
echo round(5.045, 2);    // 5.05
echo round(5.055, 2);    // 5.06
?>
小数点以下順位を指定して四捨五入する方法 (番外編)

小数点以下の順位を指定して、四捨五入するには下記のようにやることもできます。
この方がわかりやすいかもしれません。

$n = 2; // 小数点第n位
echo round( 1.66666 * pow( 10 , $n ) ) / pow( 10 , $n ) ; //1.67

floor関数

floor( 数値 )
小数点以下を切り捨てます。
戻り値は切り捨て後の数値です
整数値で切り捨てする方法

floor関数は、小数点以下を切り捨てる関数です。
実際に、動かして見ると下記のような結果になります。

<?php
echo floor(4.3);   // 4
echo floor(9.999); // 9
echo floor(-3.14); // -4
?>
小数点以下順位を指定して切り捨てをする方法

小数点以下を第何位までかを指定して、切り捨てることは下記のようにするとできます。

$n = 2; // 小数点第n位
echo floor( 1.66666 * pow( 10 , $n ) ) / pow( 10 , $n ) ; //1.66

ceil関数

ceil( 数値 )
小数点以下を切り上げます。
戻り値は切り上げ後の数値です
整数値で切り上げる方法

ceil関数は、小数点以下を切り上げる関数です。
実際に動かして見ると下記のような結果になります。

echo ceil(4.3);    // 5
echo ceil(9.999);  // 10
echo ceil(-3.14);  // -3
小数点以下で切り上げる方法

小数点以下、第何位で切り上げたいという場合には、下記のようにすると行うことが出来ます。

$n = 2; // 小数点第n位
echo ceil( 1.66666 * pow( 10 , $n ) ) / pow( 10 , $n ) ; //1.67

小数点以下の順位四捨五入はや切り捨て、切り上げの方法は、一旦、整数にして、それをまた、小数点に戻すという手です。

PHPで切り捨て・切り上げ・四捨五入をしようとしている方は、参考にしてください。

※pow関数は、数値のべき乗を求める関数です。