Php/docs/messageformatter.parsemessage
MessageFormatter::parseMessage
msgfmt_parse_message
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
MessageFormatter::parseMessage -- msgfmt_parse_message — Quick parse input string
说明
面向对象风格
public
static
MessageFormatter::parseMessage
( string $locale
, string $pattern
, string $source
) : array
过程化风格
msgfmt_parse_message
( string $locale
, string $pattern
, string $value
) : array
Parses input string without explicitly creating the formatter object. Use this function when the format operation is done only once and does not need and parameters or state to be kept.
参数
locale
- The locale to use for parsing locale-dependent parts
pattern
- The pattern with which to parse the
value
. source
- The string to parse, conforming to the
pattern
.
返回值
An array containing items extracted, or false
on error
范例
Example #1 msgfmt_parse_message() example
<?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);?>
Example #2 OO example
<?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() - Constructs a new Message Formatter
- msgfmt_format_message() - Quick format message
- msgfmt_parse() - Parse input string according to pattern