Foros del Web » Programando para Internet » PHP »

con tres ceros

Estas en el tema de con tres ceros en el foro de PHP en Foros del Web. hola, debe ser una tonteria, ¿pero como me lo hago para que los resultados de mis operaciones me los ponga en tres decimales?...
  #1 (permalink)  
Antiguo 02/07/2003, 09:17
 
Fecha de Ingreso: febrero-2002
Mensajes: 68
Antigüedad: 15 años, 10 meses
Puntos: 0
con tres ceros

hola,
debe ser una tonteria, ¿pero como me lo hago para que los resultados de mis operaciones me los ponga en tres decimales?
  #2 (permalink)  
Antiguo 02/07/2003, 09:22
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Hola,

¿Solo lo quieres para mostrar el resultado o para luego usarlo tambien como operando solo con esos decimales? En las FAQs esta solucionado. Usas number_format() en el caso de mostrar, y round() para usarlo luego como operando.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #3 (permalink)  
Antiguo 02/07/2003, 09:29
 
Fecha de Ingreso: febrero-2002
Mensajes: 68
Antigüedad: 15 años, 10 meses
Puntos: 0
con round lo paso a integer por lo tanto pierdo los tres ceros y con format_number() lo paso a cadena de texto, ¿voy mal?

y para poder operar pero con tres ceros?
  #4 (permalink)  
Antiguo 02/07/2003, 09:49
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Vas bien con number_format(), pero vuelve a leer el manual de round() (www.php.net/round). Y siempre podrias pasar de cadena a numero con settype() o floatval() (dependiendo de versiones). O incluso lo podrias castear (http://www.php.net/manual/en/languag...es.typecasting).

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #5 (permalink)  
Antiguo 02/07/2003, 09:58
 
Fecha de Ingreso: febrero-2002
Mensajes: 68
Antigüedad: 15 años, 10 meses
Puntos: 0
Merci

ya se porque no encontraba yo la solucion a mi problema

la funcion round en castellano esta mal traducida, echad una mirada
http://es2.php.net/manual/es/function.round.php
http://es2.php.net/manual/en/function.round.php
  #6 (permalink)  
Antiguo 02/07/2003, 14:10
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 15 años, 6 meses
Puntos: 16
Entonces me disculpo, no es que no lo habrias leido.

Es una pena que el manual en castellano este tan poco actualizado. Se de secciones enteras que estan sin traducir. Yo por costumbre siempre miro la version inglesa, que siempre es la mas actualizada. Ademas, los comentarios tambien estan en ingles.

Aun asi, me queda la duda, porque en el de ingles pone
Cita:
Note: The precision parameter is only available in PHP 4.
¿No sera una errata y es PHP 4.3? ¿O es que el manual en castellano de esa funcion no se ha actualizado desde PHP 3?

Acabo de probar con mi 4.1
Código PHP:
echo round(15.9999,2);  // saca 16
echo round(15.9699,2);  // saca 15.97 
y funciona. Eso si, redondea. Si lo que quieres es que saque 15.99 en mi primer ejemplo (sin redondeo), usa number_format() y castealo a float.

Saludos.
__________________
Josemi

Aprendiz de mucho, maestro de poco.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 01:22.