MessageFormatter::parse()
msgfmt_parse
(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
Parse input string according to pattern
说明
面向对象风格public MessageFormatter::parse(string $value): array
过程化风格
msgfmt_parse(MessageFormatter$fmt,string $value): array
Parses input string and return any extracted items as an array.
参数
- $fmt
The message formatter
- $value
The string to parse
返回值
An array containing the items extracted, or FALSE
on error
范例
msgfmt_parse() example
<?php $fmt = msgfmt_create('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree"); $res = msgfmt_parse($fmt, "4,560 monkeys on 123 trees make 37.073 monkeys per tree"); var_export($res); $fmt = msgfmt_create('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum"); $res = msgfmt_parse($fmt, "4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum"); var_export($res); ?>
OO example
<?php $fmt = new MessageFormatter('en_US', "{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree"); $res = $fmt->parse("4,560 monkeys on 123 trees make 37.073 monkeys per tree"); var_export($res); $fmt = new MessageFormatter('de', "{0,number,integer} Affen auf {1,number,integer} Bäumen sind {2,number} Affen pro Baum"); $res = $fmt->parse("4.560 Affen auf 123 Bäumen sind 37,073 Affen pro Baum"); var_export($res); ?>
以上例程会输出:
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() Format the message
- msgfmt_parse_message() Quick parse input string