Twigで数値の端数処理(四捨五入、切り捨て、切り上げ)をする方法

Twigで数値の端数を四捨五入、切り捨て、切り上げする方法をご紹介します。

今回は、Twigでの数値の3つの端数処理方法(四捨五入、切り捨て、切り上げ)roundフィルターを使用して実装する方法を紹介します。

四捨五入

roundフィルターのデフォルトの動作は四捨五入です。例えば、

{{ 42.55|round }}

このコードは、43と出力されます。

切り捨て

切り捨ては、roundフィルターの第2引数に floor を指定します。例えば、小数第二位以下を切り捨てて、小数第一位までの値を得るには以下のようにします。

{{ 42.55|round(1, 'floor') }}

このコードは、42.5として出力されます。

切り上げ

切り上げは、roundフィルターの第2引数に ceil を指定します。例えば、小数第二位以下を切り上げて、小数第一位までの値を得るには以下のようにします。

 

{{ 42.45|round(1, 'ceil') }}

このコードは、42.5として出力されます。

第1引数について

roundフィルターの第一引数は、数値の精度を指定するためのものです。具体的には、小数点以下の桁数を指定するための値として使われます。つまり、結果として小数第何位までの数値が欲しいか、ということですね。デフォルトの精度は0なので、結果として整数が出力されます。

したがって、例えば小数以下はすべて切り捨てたい場合は、以下のように書けます。

{{ 42.55|round(0, 'floor') }}

まとめ

roundフィルターは、非常に柔軟性があり、必要な精度と方法で数値を簡単に端数処理することができます。デフォルトの四捨五入から、切り捨てや切り上げまで、簡単なフィルターの指定で実現できるのは Twig の強みですね。

Published 2023-09-29
Updated 2023-09-29