Portada | Monotemáticos | Secciones | Desarrolladores | Comunidad | Servicios | Servicios profesionales | RSS
Desde 0 | HTML | CSS | ASP | PHP | AJAX | Javascript | Diseño web | Promoción web | Ganar dinero
Directorio | Manuales | Scripts | FAQs | Programas | Artículos Copyleft | Actualidad | La Cosecha | Colabora
Registrarse | Vuestras páginas | Foros del web | Lista de correo | Boletín de novedades
Generador METAs | Compras | Busca cursos
Alojamiento | Dominios.es | Micropagos SMS | Buscadores | Patentes, marcas | Creación web | Multimedia | Videos
Desarrollo Freelance | Buscar proyectos | Buscar profesionales | Solicitar desarrollo

Formato de números en PHP


Explicaciones y ejemplos sobre formato de números en PHP. Aprendemos a formatear números en PHP con puntos entre los millares y comas en decimales.


28/3/08 - Cuando mostramos un número en una página web podemos querer que tenga un formato específico. Por ejemplo, que tenga sólo dos decimales, o que utilice comas -o puntos- para separar decimales, así como las unidades de millar. Típicos formatos de número podrían ser:

1.000.505,56
5003.60
5,000.00


Presentar los números con uno u otro formato es sencillo, ya que en PHP existe una función específica para dar formato a los números, que dependiendo de los parámetros recibidos los formateará de una u otra manera. En este artículo vamos a conocer dicha función, así como sus posibilidades de configuración y ver varios ejemplos.

Función number_format()

El formateo de números lo llevaremos a cabo con la función de PHP number_format(). Esta función recibe uno, dos o cuatro parámetros. Es decir, tenemos estas restricciones:

  • Hay un único parámetro obligado (el número que queremos formatear).
  • El segundo parámetro es opcional, tal como el tercero y el cuarto
  • Pero si especificamos el tercer parámetro, estamos obligados a especificar también el cuarto.
Veamos con detalle los parámetros de la función de formateo de números de PHP, con diversos ejemplos.

Parámetro 1, el número:
El primer parámetro es el número a formatear. Tal como dijimos, aunque resulta obvio, es un parámetro siempre necesario.

$numero = 15200.67;
number_format($numero);
//devuelve 15,201


En este caso, el formateo del número nos dará el número sin decimales y con una coma como separador de miles. Este formato es el que se utiliza en inglés (las personas de habla inglesa separan con comas los millares al escribir los números), que seguramente no nos sirva a los desarrolladores que trabajamos en español.

Cabe fijarse que la función number_format() ha realizado también un redondeo de los decimales que no está mostrando. Este redondeo lo vamos a ver bien en este ejemplo:

$numero = 999999999.99;
number_format($numero);
//devuelve 1,000,000,000


Parámetro 2, los decimales:
Con el segundo parámetro, que es opcional, indicamos el número de decimales que queremos que aparezcan en el número formateado.

$numero = 15200.67;
number_format($numero,2);
//devuelve 15,201.67


Como vemos, en este caso se han incorporado dos decimales al formato del número. Utiliza comas para separar los miles y un punto para separar las unidades de millar. Como vemos, sigue utilizando la notación inglesa para formatear números.

Otro ejemplo, en el que podemos apreciar que siempre se hace un redondeo del número, si los decimales a mostrar son menos que los que tiene el número original.

$numero = 1885200.89;
number_format($numero,1);
//devuelve 1,885,200.9


Parámetros 3 y 4, separadores de decimales y de unidades de millar
Los últimos parámetros, que debemos utilizar siempre juntos, sirven para especificar los separadores que queremos utilizar para los decimales y las unidades de millar. Si queremos formatear los números con la notación española tendríamos que utilizar forzosamente estos parámetros.

Por ejemplo, así haríamos para formatear los números en español:
  • Separar los decimales con coma
  • Separar las unidades de millar con un punto.
$numero = 1002002.365;
number_format($numero, 2, ",", ".");
//devuelve 1.002.002,37


Si, por ejemplo, no separar los millares, simplemente pasamos como separador de unidades de millar (cuarto parámetro) la cadena vacía:

$numero = 9540.2;
number_format($numero, 2, ",", "");
//devuelve 9540,20


Conclusión sobre el formato de números con PHP

Eso es todo lo que tenemos que saber para formatear números en PHP. Como se ha podido ver es bien sencillo presentar los números con los decimales que necesitemos y con los separadores correctos de decimales y millares para el idioma español.

 Seguir navegando a partir aquí:
+ 1 manual relacionado
+ 1 categoria relacionada

 Autoría, licencia y acciones sobre este artículo

Informe de Miguel Angel Alvarez*
Director de DesarrolloWeb.com

Atención: Contenido exclusivo de DesarrolloWeb.com. No reproducir. Copyright.

* Para consultas técnicas utilizar la lista de correo.

Versión imprimible Versión imprimible del artículo
Enviar artículo por e-mail Enviar artículo por e-mail
Añadir un comentario al artículo Publicar un comentario del artículo

Manuales relacionados con este artículo
Dentro de Taller de PHP

Categorias relacionadas
A través de las categorías de nuestro directorio se pueden encontrar otro tipo de recursos relacionados con este artículo:
+ Entrar en Scripts en PHP


 Comentarios de los visitantes
Aun no hemos recibido comentarios de este artículo.
Puedes ser el primero en enviar tu comentario.



Enlaces:
Maestrosdelweb
  Ir arriba

Manuales relacionados
+Taller de PHP
Categorías
+Scripts en PHP

Lectura recomendada

Compra este libro en Agapea, la librería urgente a domicilio.

Tienda DesarrolloWeb

DesarrolloWeb.com | Copyright | Anunciese | Acerca de | Datos legales | Contacta | Por GuiarteMultimedia