(PHP 5 >= 5.3.0, PHP 7, PECL intl >= 1.0.0)
MessageFormatter::parseMessage -- msgfmt_parse_message — Procesar rápidamente una cadena de entrada
Estilo orientado a objetos
$locale
, string $pattern
, string $source
) : arrayEstilo por procedimientos
$locale
, string $pattern
, string $value
) : arrayProcesa una cadena de entrada sin crear explícitamente el objeto formateador. Utilice esta función cuando la operación de formateo se realice sólo una vez y no necesite parámetros o estados para que se mantenga.
locale
La configuración regional a usar para el procesamiento de las partes dependientes de la región
pattern
El patrón con el que procesar value
.
source
El string a procesar, de acuerdo al patrón dado por pattern
.
Un array que contiene los elementos extraídos, o FALSE
en caseo de error
Ejemplo #1 Ejemplo de 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('es', "{0,number,integer} monos en {1,number,integer} árboles hacen {2,number} monos por árbol",
"4.560 monos en 123 árboles hacen 37,073 monos por árbol");
var_export($fmt);
?>
Ejemplo #2 Ejemplo orientado a objetos
<?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('es', "{0,number,integer} monos en {1,number,integer} árboles hacen {2,number} monos por árbol",
"4.560 monos en 123 árboles hacen 37,073 monos por árbol");
var_export($fmt);
?>
El resultado del ejemplo sería:
array ( 0 => 4560, 1 => 123, 2 => 37.073, ) array ( 0 => 4560, 1 => 123, 2 => 37.073, )