Nota:
La función money_format() está
definida solo si el sistema tiene la capacidad de llamar a
strfmon. Por ejemplo, Windows no tiene soporte para esta
función, asà que money_format()
no se encuentra definida en Windows.
La especificación de formato consiste de la siguiente
secuencia:
un caracter %
banderas opcionales
un ancho de campo opcional
precisión de izquierda opcional
precisión de derecha opcional
un caracter de conversión, requerido
Banderas.
Una o más de las siguientes banderas opcionales pueden
ser usadas:
Una cadena de dÃgito decimal que especifica un ancho
de campo mÃnimo. El campo será justificado a
derecha a menos que la bandera - sea
usada. El valor predeterminado es 0 (cero).
Si no se ha suprimido el agrupamiento usando la bandera
^, los separadores de agrupamiento
serán insertados antes de que los caracteres de
relleno (si los hay) sean agregados. Los separadores de
agrupamiento no serán aplicados sobre los caracteres
de relleno, aun si el caracter de relleno es un
dÃgito.
El número recibe formato de acuerdo al formato de
moneda internacional de la localidad (p.ej. para la
localidad de USA: USD 1,234.56).
n
El número recibe formato de acuerdo al formato de
moneda nacional de la localidad (p.ej. para la localidad
de_DE: DM1.234,56).
%
Devuelve el caracter %.
Nota:
La categorÃa LC_MONETARY de los
parámetros de la localidad, afecta el comportamiento de
esta función. Use setlocale() para
establecer la localidad por defecto apropiada antes de usar esta
función.
Usaremos diferentes localidades y especificaciones de formato
para ilustrar el uso de esta función.
<?php
$numero = 1234.56;
// imprimamos el formato internacional para la localidad en_US setlocale(LC_MONETARY, 'en_US'); echo money_format('%i', $numero) . "\n"; // USD 1,234.56
// Formato nacional italiano con 2 decimales setlocale(LC_MONETARY, 'it_IT'); echo money_format('%.2n', $numero) . "\n"; // L. 1.234,56
// Uso de un numero negativo $numero = -1234.5672;
// Formato nacional de US, usando () para numeros negativos // y 10 digitos para la precision de derecha setlocale(LC_MONETARY, 'en_US'); echo money_format('%(#10n', $numero) . "\n"; // ($ 1,234.57)
// Un formato similar al anterior, agregando el uso de 2 digitos de // precision de derecha y '*' como caracter de relleno echo money_format('%=*(#10.2n', $numero) . "\n"; // ($********1,234.57)
// Justifiquemos a izquierda, con 14 posiciones de ancho, 8 digitos de // precision de izquierda, 2 de precision de derecha, sin caracter de // agrupamiento y usando el formato internacional de la localidad // de_DE. setlocale(LC_MONETARY, 'de_DE'); echo money_format('%=*^-14#8.2i', 1234.56) . "\n"; // DEM 1234,56****
// Agreguemos un poco de informacion antes y despues de la especificacion // de conversion setlocale(LC_MONETARY, 'en_GB'); $fmt = 'El valor final es %i (despues de un descuento de 10%%)'; echo money_format($fmt, 1234.56) . "\n"; // El valor final es GBP 1,234.56 (despues de un descuento de 10%)
Atención técnica y comercial: (54)-11-5031-1111 las 24 hs. los 365 días del año. ToWebs, (c) 2008
Virtucom Networks S.A Av. Belgrano 1586, piso 10 (C1093AAQ) Cap. Fed. Bs. As, Argentina.