Php/docs/function.number-format

提供:Dev Guides
< Php
移動先:案内検索

number_format

(PHP 4, PHP 5, PHP 7)

number_format数字を千位毎にグループ化してフォーマットする


説明

number_format ( float $number [, int $decimals = 0 ] ) : string

number_format ( float $number , int $decimals = 0 , string $dec_point = "." , string $thousands_sep = "," ) : string

この関数は 1 つか 2 つもしくは 4 つのパラメータを受け取ります (3 つはありません) :

パラメータが 1 つだけ渡された場合、 number は千位毎にカンマ (",") が追加され、 小数なしでフォーマットされます。

パラメータが 2 つ渡された場合、numberdecimals 桁の小数の前にドット (".") 、 千位毎にカンマ (",") が追加されてフォーマットされます。

パラメータが 4 つ全て渡された場合、number はドット (".") の代わりに dec_pointdecimals 桁の小数の前に、千位毎にカンマ (",") の代わりに thousands_sep が追加されてフォーマットされます。


パラメータ

number
フォーマットする数値。
decimals
小数点以下の桁数。
dec_point
小数点を表す区切り文字。
thousands_sep
千位毎の区切り文字。


返り値

number をフォーマットした結果を返します。


変更履歴

バージョン 説明
7.2.0 number_format() は、

-0 を返さないように変更されました。 これより前のバージョンでは、 number-0.01 のようなケースで -0 が返される場合がありました。


例1 number_format() の例

例えばフランスの表記法では、通常カンマ (',') を小数の区切りとした二桁の小数と、千位毎の区切りとしてスペース (' ') を用います。数値を書式設定するさまざまな方法を次の例で示します。


<?php$number = 1234.56;// 英語での表記 (デフォルト)$english_format_number = number_format($number);// 1,235// フランスの表記$nombre_format_francais = number_format($number, 2, ',', ' ');// 1 234,56$number = 1234.5678;// 千位毎の区切りがない英語での表記$english_format_number = number_format($number, 2, '.', );// 1234.57?>

参考

  • money_format() - 数値を金額文字列にフォーマットする
  • sprintf() - フォーマットされた文字列を返す
  • printf() - フォーマット済みの文字列を出力する
  • sscanf() - フォーマット文字列に基づき入力を処理する