Twigで小数を整数に丸めたい場合がある。

そんな時に使えるのがroundフィルター。

roundフィルターでは、四捨五入の他、ExcelでいうROUNDUP、ROUNDDOWNのような切り上げ・切り捨て、また丸める桁数を指定できたりと、様々なオプションが用意されている。

小数点以下を四捨五入

roundフィルターは、引数に何も指定しないと小数点以下を四捨五入し、整数に丸めることができる。

{{ (8 / 3)|round }}

{# 2.666...が3になる #}

また、引数に桁数を指定することで、指定桁数による四捨五入をおこなうこともできる。

{{ (8 / 3)|round(1) }}

{# 2.7 #}

小数点以下を切り上げ

roundフィルターの第二引数にceilを指定することで、切り上げ処理をおこなうこともできる。

この場合は第一引数(桁数)の指定が必須で、整数に丸めたい場合は0を指定する。

{{ (7 / 3)|round(0, 'ceil') }}
{# 2.333...が3になる #}

{{ (8 / 3)|round(1, 'ceil') }}
{# 2.4 #}

小数点以下を切り捨て

roundフィルターの第二引数にfloorを指定することで、切り捨て処理をおこなうこともできる。

{{ (8 / 3)|round(0, 'floor') }}
{# 2.666...が2になる #}

{{ (8 / 3)|round(1, 'floor') }}
{# 2.6 #}