Documentación offline PHP master

NumberFormatter::create

master Ver versión oficial en línea Licencia CC-BY-3.0Descargado el 2026-08-02

En esta página

NumberFormatter::create

numfmt_create

NumberFormatter::__construct

Crea un formateador de números

Descripción#

Estilo orientado a objetos (método)

public static NumberFormatter::create(string $locale, int $style, [string $pattern]): NumberFormatter
```php

Estilo procedimental

```php
numfmt_create(string $locale, int $style, [string $pattern]): NumberFormatter

Estilo orientado a objetos (constructor)

public NumberFormatter::__construct(string $locale, int $style, [string $pattern])
```php

Crea un formateador de números

## Parámetros

`locale`  
La configuración local con la cual los números serán formateados (i.e. en_CA).

`style`  
El estilo de formato, una de las constantes [de estilo de formato](#intl.numberformatter-constants.unumberformatstyle). Si `NumberFormatter::PATTERN_DECIMAL` o `NumberFormatter::PATTERN_RULEBASED` es utilizado entonces el formato de número es abierto con el patrón proporcionado, que debe ser compatible con la sintaxis descrita por la [documentación ICU DecimalFormat](https://unicode-org.github.io/icu-docs/apidoc/released/icu4c/classDecimalFormat.html) o [documentación ICU RuleBasedNumberFormat](https://unicode-org.github.io/icu/userguide/format_parse/numbers/rbnf.html), respectivamente.

`pattern`  
La cadena de patrón, en función del estilo de formato elegido.

## Valores devueltos

Devuelve un objeto `NumberFormatter` o `null` en caso de error.

## Errores/Excepciones

Se levanta una ValueError si `locale` es inválido.

## Historial de cambios

| Versión | Descripción                                        |
|---------|----------------------------------------------------|
| 8.4.0   | Se levanta una ValueError si `locale` es inválido. |
| 8.0.0   | `pattern` ahora es nullable.                       |

## Ejemplos

Ejemplo con `numfmt_create::create`, Estilo procedimental
Ejemplo con `numfmt_create::create`, estilo POO
format(1234567.891234567890000)."\n"; $fmt = new NumberFormatter( 'it', NumberFormatter::SPELLOUT ); echo $fmt->format(1142)."\n"; ?>

```php

El ejemplo anterior mostrará:

1.234.567,891
millicentoquarantadue

Véase también#

numfmt_format, numfmt_parse