MessageFormatter::parseMessage
msgfmt_parse_message
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
MessageFormatter::parseMessage -- msgfmt_parse_message — 手早く入力文字列をパースする
説明
オブジェクト指向型
public static MessageFormatter::parseMessage(string
$locale
, string $pattern
, string $message
): array|false手続き型
明示的にフォーマッタオブジェクトを作成せずに、 手早く入力文字列をパースします。 この関数を使用するのは、 一度きりのフォーマット処理であってパラメータや状態を保持する必要がない場合です。
パラメータ
locale
-
ロケールに依存する部分をパースする際に使用するロケール。
pattern
-
message
のパースに使うパターン。 message
-
パースする文字列。
pattern
を満たします。
戻り値
取り出した項目を含む配列を返します。
エラーが発生した場合は false
を返します。
例
例1 msgfmt_parse_message() の例
<?php
$fmt = msgfmt_parse_message('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
"4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);
$fmt = msgfmt_parse_message('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
"4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>
例2 オブジェクト指向の例
<?php
$fmt = MessageFormatter::parseMessage('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree",
"4,560 monkeys on 123 trees make 37.073 monkeys per tree");
var_export($fmt);
$fmt = MessageFormatter::parseMessage('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum",
"4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum");
var_export($fmt);
?>
上の例の出力は以下となります。
array ( 0 => 4560, 1 => 123, 2 => 37.073, ) array ( 0 => 4560, 1 => 123, 2 => 37.073, )
参考
- msgfmt_create() - 新しいメッセージフォーマッタを作成する
- msgfmt_format_message() - 手早くメッセージをフォーマットする
- msgfmt_parse() - パターンを使用して入力文字列をパースする
+add a note
User Contributed Notes
There are no user contributed notes for this page.
↑ and ↓ to navigate •
Enter to select •
Esc to close
Press Enter without
selection to search using Google