【PHP】数値のカンマ区切り(価格表示とか)
価格表示とか、数値の動的出力の時に、値を見やすくするために「カンマ」で数字を区切っていることがあると思いますが、いともたやすく出来るのだなーと思ったので、備忘録がてら。
使う関数はnumber_format関数
<?php $numTmp = 123456789; $num = number_format($numTmp); echo $num; // 結果は「123,456,789」 ?>
使い方はこんな感じ。
int値をnumber_format関数に入れてあげればOK。
(いままで桁数で繰り返して、4桁目にきたらカンマを挿入していたのは内緒)
桁数とか何で区切るのかを決めることが出来る引数
引数ごとでオプションも設定できるので、うまく使うといいかも。
<?php $numTmp = 12345.6789; /** * 第1引数: フォーマットする数値 * 第2引数: 小数点以下の数値をいくつ表示するか * 第3引数: 小数点を何の文字にするか * 第4引数: 千の位を何の文字で区切るか */ $num = number_format($numTmp, 2, "_", "+"); echo $num; // 結果は「12+345_67」 ?>
わかると思うけど、出力は文字列(string)です。
"number"って言っているので、なんとなく数値として出力されそうですけど、記号とかスペースとか入っちゃうからね。
is_intとか使っちゃうと、当然通らないので念のためご注意をば。