Saltar al contenido

money_format()

La función money_format() formatea un número como una cadena de moneda. Nota: Esta función fue eliminada en PHP 7.0. Para PHP moderno, utiliza la clase NumberFormatter de la extensión intl. A continuación se muestra la sintaxis y el uso históricos para bases de código heredadas.

La sintaxis es la siguiente:

Sintaxis de money_format() en PHP

php
string money_format ( string $format , float $number )

La función toma dos parámetros: $format (una cadena que contiene reglas de formato) y $number (el valor numérico a formatear). Los especificadores de formato comunes incluyen:

  • %i – Formato de moneda internacional (por ejemplo, USD, EUR)
  • %n – Formato de moneda local (por ejemplo, $, )

A continuación se muestra un ejemplo de cómo usar la función money_format():

Ejemplo de money_format() en PHP

php
<?php
$number = 1234.56;
setlocale(LC_MONETARY, 'en_US');
echo money_format('%n', $number);
?>

En este ejemplo, $number contiene un valor de punto flotante. La llamada a setlocale() configura la configuración regional monetaria en en_US. Ten en cuenta que setlocale() devuelve false si la configuración regional especificada no es compatible, lo que provocaría que money_format() fallara. Además, setlocale() está en desuso en PHP 8.1 y se eliminó en PHP 8.2, por lo que este ejemplo solo se ejecuta en PHP 7.4 y versiones anteriores.

La salida de este código será:

console
$1,234.56

Esta función se utilizaba históricamente para el formato contable y financiero en PHP. Para proyectos actuales, la clase NumberFormatter proporciona formato consciente de la configuración regional y es el enfoque recomendado.

Esta descripción general cubre la función heredada money_format() para referencia y mantenimiento de código PHP más antiguo.

Práctica

¿Qué hace la función 'money_format' en PHP?

¿Te resulta útil?

Vista previa dual-run — compárala con las rutas Symfony en producción.