(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
MessageFormatter::parse -- msgfmt_parse — Parse input string according to pattern
面向对象风格
$string
) : array|false过程化风格
Parses input string and return any extracted items as an array.
formatter
The message formatter
string
The string to parse
An array containing the items extracted, or false
on error
Example #1 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);
?>
Example #2 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, )