Men√ļ Cerrar

Dar Formato a la funcion ūü™ô money_format de PHP

php

(PHP 4 >= 4.3.0, PHP 5)

money_format ? Da formato a un n√ļmero como una cadena de moneda.

Descripción

string money_format ( string $formato , float $numero )

money_format() devuelve una versi√≥n con formato de numero . Esta funci√≥n envuelve la funci√≥n de la biblioteca de C strfmon(), con la diferencia de que esta implementaci√≥n convierte solo un n√ļmero a la vez.

Lista de par√°metros

formato

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:

=f

El caracter = seguido de un caracter (byte sencillo) f que será usado como el caracter de relleno numérico. Es caracter de relleno predeterminado es el espacio.

^

Deshabilitar el uso de caracteres de agrupamiento (tal y como est√©n definidos seg√ļn la localidad actual).

+ o (

Especifica el estilo de formato para n√ļmeros positivos y negativos. Si se usa +, los equivalentes de + y en la localidad actual ser√°n usados. Si se usa (, las cantidades negativas estar√°n ubicadas entre par√©ntesis. Si no se da especificaci√≥n alguna, el valor por defecto es +.

!

Elimina el símbolo de moneda de la cadena de salida.

Si se encuentra presente, hará que todos los campos estén justificados a izquierda (con relleno a la derecha), en contraste al comportamiento predeterminado que hace que los campos estén justificados a derecha (con relleno a la izquierda).

 

 

Ancho de campo
w

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).

 

 

Precisión de izquierda
#n

El n√ļmero m√°ximo de d√≠gitos (n) a esperar a la izquerda del caracter decimal (p. ej. el punto decimal). Usualmente se usa para mantener la salida con formato alineada en las mismas columnas, usando el caracter de relleno si el n√ļmero de d√≠gitos es menor que n. Si el n√ļmero de d√≠gitos real es mayor que n, entonces esta especificaci√≥n es ignorada.

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.

Para asegurar el alineamiento, cualquier caracter que aparezca antes o despu√©s del n√ļmero en la salida con formato, tales como los s√≠mbolos de moneda o de signo, son rellenados en tanto sea necesario con caracteres de espacio para hacer que sus formatos positivo y negativo tengan una misma longitud.

 

 

Precisión de derecha
.p

Un punto seguido del n√ļmero de d√≠gitos (p) despu√©s del caracter decimal. Si el valor de p es 0 (cero), el caracter decimal y los d√≠gitos a su derecha ser√°n omitidos. Si no se incluye ninguna precisi√≥n de derecha, el valor predeterminado ser√° determinado por la localidad en uso. La cantidad a la cual se est√° dando formato es redondeada al n√ļmero de d√≠gitos especificado antes del formato.

 

 

Caracteres de conversión
i

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 %.

 

 

numbero

El n√ļmero a ser formateado.

 

Valores retornados

Devuelve la cadena con formato. Los caracteres antes y después de la cadena de formato serán regresados sin modificar.

Notes

Note: 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.

Note: 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 predeterminada apropiada antes de usar esta función.

Ejemplos

Example #1 Ejemplo de money_format()

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¬†n√ļmero¬†negativo $numero¬†=¬†-1234.5672; //¬†Formato¬†nacional¬†de¬†US,¬†usando¬†()¬†para¬†n√ļmeros¬†negativos //¬†y¬†10¬†d√≠gitos¬†para¬†la¬†precisi√≥n¬†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¬†d√≠gitos¬†de //¬†precisi√≥n¬†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¬†d√≠gitos¬†de //¬†precisi√≥n¬†de¬†izquierda,¬†2¬†de¬†precisi√≥n¬†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¬†informaci√≥n¬†antes¬†y¬†despues¬†de¬†la¬†especificaci√≥n //¬†de¬†conversi√≥n setlocale(LC_MONETARY,¬†'en_GB'); $fmt¬†=¬†'El¬†valor¬†final¬†es¬†%i¬†(despu√©s¬†de¬†un¬†descuento¬†de¬†10%%)'; echo¬†money_format($fmt,¬†1234.56)¬†.¬†"\n"; //¬†El¬†valor¬†final¬†es¬†GBP¬†1,234.56¬†(despu√©s¬†de¬†un¬†descuento¬†de¬†10%) ?>

Te invitamos a visitar nuestros canales en y Suscribirte



Suscríbete por correo electrónico

Recibe notificaciones de Spek Regg

√önete a otros 32 suscriptores


Publicado en Manuales de Ayuda, Soporte Tecnico

Te puede interesar...

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *