If you're looking for the pattern syntax, their documentation is here: http://unicode.org/reports/tr35/tr35-numbers.html#Number_Format_Patterns
(PHP 5 >= 5.3.0, PHP 7, PHP 8, PECL intl >= 1.0.0)
NumberFormatter::setPattern -- numfmt_set_pattern — Establecer el patrón de un formateador
Estilo orientado a objetos
Estilo por procedimientos
Establece el patrón usado por el formateador. No se puede usar en formateadores basados en reglas.
fmt
Un objeto de la clase NumberFormatter.
pattern
Un patrón con la sintaxis descrita en la » documentación de DecimalFormat de ICU.
Devuelve true
en caso de éxito o false
en caso de error.
Ejemplo #1 Ejemplo de numfmt_set_pattern()
<?php
$fmt = numfmt_create( 'de_DE', NumberFormatter::DECIMAL );
echo "Patrón: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
numfmt_set_pattern($fmt, "#0.# kg");
echo "Patrón: ".numfmt_get_pattern($fmt)."\n";
echo numfmt_format($fmt, 1234567.891234567890000)."\n";
?>
Ejemplo #2 OO example
<?php
$fmt = new NumberFormatter( 'de_DE', NumberFormatter::DECIMAL );
echo "Patrón: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
$fmt->setPattern("#0.# kg");
echo "Patrón: ".$fmt->getPattern()."\n";
echo $fmt->format(1234567.891234567890000)."\n";
?>
El resultado del ejemplo sería:
Patrón: #,##0.### 1.234.567,891 Patrón: #0.# kg 1234567,9 kg
If you're looking for the pattern syntax, their documentation is here: http://unicode.org/reports/tr35/tr35-numbers.html#Number_Format_Patterns
setPattern appears to influence only the behavior of the format method, not the parse method of the NumberFormatter object.
$pattern = '#,##0';
$frmtr = NumberFormatter::create('en-US', NumberFormatter::DECIMAL);
$frmtr->setPattern($pattern);
echo $frmtr->parse('12.345');
// returns 12