number_format

(PHP 4, PHP 5, PHP 7, PHP 8)

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

説明

number_format(
    float $num,
    int $decimals = 0,
    ?string $decimal_separator = ".",
    ?string $thousands_separator = ","
): string

数値を千の位毎にグループ化し、オプションで小数の桁も追加してフォーマットします。

パラメータ

num

フォーマットする数値。

decimals

小数点以下の桁数。 0 を指定すると、 戻り値の decimal_separator は省略されます。

decimal_separator

小数点を表す区切り文字。

thousands_separator

千の位毎の区切り文字。

戻り値

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

変更履歴

バージョン 説明
8.0.0 これより前のバージョンでは、 number_format() 関数は 引数を1個、2個、または4個受け入れていました(つまり、3個はダメでした)。
7.2.0 number_format() は、 -0 を返さないように変更されました。 これより前のバージョンでは、 num-0.01 のようなケースで -0 が返される場合がありました。

例1 number_format() の例

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

<?php

$number 
1234.56;

// 英語での表記 (デフォルト)
$english_format_number number_format($number);
// 1,235

// フランスの表記
$nombre_format_francais number_format($number2','' ');
// 1 234,56

$number 1234.5678;

// 千位毎の区切りがない英語での表記
$english_format_number number_format($number2'.''');
// 1234.57

?>

参考

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

関連キーワード:  フォーマット, グループ, 数字, format, , separator, 区切り, 数値, num, string