🍣
PHPの便利な関数:桁数の区切りにカンマを追加する!number_format()
number_format()
Webプログラムでは、料金を扱う機会が多いはずです。
料金の表記は、千単位でカンマで区切る必要がありますが、それを独自で実装するのは地味に面倒くさいです。
このような時に、非常に便利な関数がnumber_format()
です。
var_dump( number_format(1000000000) ); // string(13) "1,000,000,000"
戻り値は文字列になります。
少数
最初の実装では、少数は考慮されていなかったようで、小数点以下は切り捨てられます。
var_dump( number_format(1000000000.1) ); // string(13) "1,000,000,000"
そこで第二引数に、小数点以下を何桁まで扱うか指定すると、小数点も扱うことができるようになります!
var_dump( number_format(1000000000.1, 2) ); // string(16) "1,000,000,000.10"
国際化
国毎に、表記に違いがあります。例えばフランスでは、小数点の区切りにカンマ(,)を使い、千単位の区切りにスペースを使います。
1 000,00 ⬅ フランスでの1,000.00の表記
そのような表記にも対応できます。
var_dump( number_format(1000000000.1, 2, ',' ,' ') ); // string(16) "1 000 000 000,10"
更に詳しい情報は、公式ページで確認して下さい。
Discussion