PHP - Manual: MessageFormatter::parse
2024-11-13
(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
示例 #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);
?>
示例 #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, )
官方地址:https://www.php.net/manual/en/messageformatter.parse.php