NumberFormatter::create

numfmt_create

NumberFormatter::__construct

数値フォーマッタを作成する

説明

オブジェクト指向型 (メソッド)

public static NumberFormatternull NumberFormatter::create(string $locale, int $style, stringnull $pattern = null)

手続き型

NumberFormatternull numfmt_create(string $locale, int $style, stringnull $pattern = null)

オブジェクト指向型 (コンストラクタ):

public NumberFormatter::__construct(string $locale, int $style, stringnull $pattern = null)

数値フォーマッタを作成します。

パラメータ

locale

数値フォーマットするロケール (ロケール名。たとえば en_CA)。

style

フォーマットの形式。 フォーマット形式 定数のいずれか。 NumberFormatter::PATTERN_DECIMAL あるいは NumberFormatter::PATTERN_RULEBASED を指定した場合は指定したパターンの数値フォーマットをオープンします。 これは、それぞれ » ICU DecimalFormat ドキュメント あるいは » ICU RuleBasedNumberFormat ドキュメント で述べられている構文を満たす必要があります。

pattern

選択した形式がパターンを要求するものである場合のパターン文字列。

戻り値

NumberFormatter オブジェクト、 あるいはエラー時に null を返します。

変更履歴

バージョン 説明
8.0.0 pattern は、nullable になりました。

例1 numfmt_create の例

<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
$fmt = numfmt_create( 'it', NumberFormatter::SPELLOUT );
echo numfmt_format($fmt, 1142)."\n";
?>

例2 NumberFormatter::create の例

<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo $fmt->format(1234567.891234567890000)."\n";
$fmt = new NumberFormatter( 'it', NumberFormatter::SPELLOUT );
echo $fmt->format(1142)."\n";
?>

上の例の出力は以下となります。

1.234.567,891
millicentoquarantadue

参考

  • numfmt_format
  • numfmt_parse