MessageFormatter::create

MessageFormatter::__construct

msgfmt_create

新しいメッセージフォーマッタを作成する

説明

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

public static MessageFormatternull MessageFormatter::create(string $locale, string $pattern)

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

public MessageFormatter::__construct(string $locale, string $pattern)

手続き型

MessageFormatternull msgfmt_create(string $locale, string $pattern)

新しい Message Formatter を作成します。

パラメータ

locale

引数のフォーマットに用いるロケール。

pattern

引数を埋め込むパターン文字列。 パターンには、'アポストロフィに優しい' 構文を使用します。 詳細は » Quoting/Escaping を参照ください。

戻り値

フォーマッタオブジェクトを返します。 失敗した場合は null を返します。

エラー / 例外

コンストラクタとして呼ばれた場合、失敗時に IntlException をスローします。

例1 msgfmt_create の例

<?php
$fmt = msgfmt_create("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
$fmt = msgfmt_create("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo msgfmt_format($fmt, array(4560, 123, 4560/123));
?>

例2 オブジェクト指向の例

<?php
$fmt = new MessageFormatter("en_US", "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo $fmt->format(array(4560, 123, 4560/123));
$fmt = new MessageFormatter("de", "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum");
echo $fmt->format(array(4560, 123, 4560/123));
?>

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

4,560 monkeys on 123 trees make 37.073 monkeys per tree
4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum

参考

  • msgfmt_format
  • msgfmt_parse
  • msgfmt_get_error_code
  • msgfmt_get_error_message