PHP Australia Conference 2015

MessageFormatter::create

MessageFormatter::__construct

msgfmt_create

(PHP 5 >= 5.3.0, PECL intl >= 1.0.0)

MessageFormatter::create -- MessageFormatter::__construct -- msgfmt_createConstruir un nuevo Formateador de Mensajes

Descripción

Estilo orientado a objetos (método)

public static MessageFormatter MessageFormatter::create ( string $locale , string $pattern )

Estilo orientado a objetos (constructor):

public MessageFormatter::__construct ( string $locale , string $pattern )

Estilo por procedimientos

MessageFormatter msgfmt_create ( string $locale , string $pattern )

Construye un nuevo Formateador de Mensajes

Parámetros

locale

La configuración regional a usar al formatear los argumentos

pattern

La cadena patrón con la que pegar los argumentos. El patrón utiliza una sintaxis 'amigable con apóstrofes'; se ejecuta a través de » umsg_autoQuoteApostrophe antes de ser interpretado.

Valores devueltos

Un object formateador

Ejemplos

Ejemplo #1 Ejemplo de msgfmt_create()

<?php
$fmt 
msgfmt_create("en_US""{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo 
msgfmt_format($fmt, array(45601234560/123));
$fmt msgfmt_create("es""{0,number,integer} monos en {1,number,integer} árboles haces {2,number} monos por árbol");
echo 
msgfmt_format($fmt, array(45601234560/123));
?>

Ejemplo #2 Ejemplo orientado a objetos

<?php
$fmt 
= new MessageFormatter("en_US""{0,number,integer} monkeys on {1,number,integer} trees make {2,number} monkeys per tree");
echo 
$fmt->format(array(45601234560/123));
$fmt = new MessageFormatter("es""{0,number,integer} monos en {1,number,integer} árboles hacen {2,number} monos por árbol");
echo 
$fmt->format(array(45601234560/123));
?>

El resultado del ejemplo sería:

4,560 monkeys on 123 trees make 37.073 monkeys per tree
4.560 monos en 123 árboles hacen 37,073 monos por árbol

Ver también

add a note add a note

User Contributed Notes 1 note

up
0
ezarko at synacor dot com
4 years ago
Beware: passing an empty string for format returns null, not a formatter which returns empty strings.

$ php -r "print_r(new MessageFormatter('en_US',' '));"
MessageFormatter Object
(
)
$ php -r "print_r(new MessageFormatter('en_US',''));"
To Top