MessageFormatter::create
MessageFormatter::__construct
msgfmt_create
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
MessageFormatter::create -- MessageFormatter::__construct -- msgfmt_create — 新しいメッセージフォーマッタを作成する
説明
オブジェクト指向型 (メソッド)
オブジェクト指向型 (コンストラクタ):
手続き型
新しい 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() - 直近の操作のエラーテキストを取得する
+add a note
User Contributed Notes 1 note
ezarko at synacor dot com ¶
15 years ago
Beware: passing an empty string for format returns null, not a formatter which returns empty strings.
$ php -r "print_r(new MessageFormatter('en_US',' '));"
MessageFormatter Object
(
)
$ php -r "print_r(new MessageFormatter('en_US',''));"
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google