Foros del Web » Programando para Internet » PHP »

Ayuda con formato de numero

Estas en el tema de Ayuda con formato de numero en el foro de PHP en Foros del Web. Estimados, hace tiempo que ando buscando algun comando que me ayude a NO redondear un numero. Por ejemplo, si tengo: Código PHP: $numero  =  9.99 ...
  #1 (permalink)  
Antiguo 05/06/2008, 16:02
Avatar de Reznorcito  
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 15 años, 11 meses
Puntos: 0
Ayuda con formato de numero

Estimados, hace tiempo que ando buscando algun comando que me ayude a NO redondear un numero. Por ejemplo, si tengo:

Código PHP:
$numero 9.99;
echo 
$numero// esto imprime 9.99
echo number_format($numero,0); // esto imprime 10 
Necesito alguna funcion q me imprima 9 , y NO lo redondee a nada.


Gracias foreros !!
  #2 (permalink)  
Antiguo 05/06/2008, 16:05
Avatar de eft0  
Fecha de Ingreso: junio-2003
Ubicación: Santiago - Chile
Mensajes: 635
Antigüedad: 20 años, 10 meses
Puntos: 9
Respuesta: Ayuda con formato de numero

Prueba con echo (float) $numero;
__________________
eft0's stuff! - http://estebanfernandez.net
  #3 (permalink)  
Antiguo 05/06/2008, 16:21
 
Fecha de Ingreso: febrero-2005
Mensajes: 673
Antigüedad: 19 años, 2 meses
Puntos: 2
Respuesta: Ayuda con formato de numero

hasta donde se no hay ninguna funcion que haga lo que quiere...
tendrias que utilizar la funcion explode asi:

$numero = 9.99;
$arr = explode(".",$numero);
$numero = $arr[0];

y listo hay tienes el numero que tengas antes del .

si tienes 45.99
te traera 45...

Espero que te sirva...
  #4 (permalink)  
Antiguo 05/06/2008, 16:26
 
Fecha de Ingreso: marzo-2008
Mensajes: 306
Antigüedad: 16 años
Puntos: 6
Respuesta: Ayuda con formato de numero

Eso se hace con la misma función que existe en C: función floor()
__________________
Pop & Rock Bands
Pop Music Stars
  #5 (permalink)  
Antiguo 05/06/2008, 19:15
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con formato de numero

igual que en C existen varias formas de hacer esto....

- usando el operador de tipo entero... (int)$numero;
- haciendo uso de la funcion ceil($numero)
- igual, usando round($numero,0) ... siendo cero, el numero de decimales; osea.... nada
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
  #6 (permalink)  
Antiguo 06/06/2008, 00:26
 
Fecha de Ingreso: marzo-2008
Mensajes: 306
Antigüedad: 16 años
Puntos: 6
Respuesta: Ayuda con formato de numero

Cita:
Iniciado por pateketrueke Ver Mensaje
- haciendo uso de la funcion ceil($numero)
- igual, usando round($numero,0) ... siendo cero, el numero de decimales; osea.... nada
Para lo que quiere Reznorcito la funcion ceil() no sirve ya que dicha función redondea al entero superior, y la funcion round() tampoco porque redondea al entero más próximo. El quiere el entero inferior, y para eso debe usar la funcion floor().

Aunque para los números negativos no ha indicado como quiere que funcione, por lo que quizá en esos casos no le sirva.
__________________
Pop & Rock Bands
Pop Music Stars
  #7 (permalink)  
Antiguo 06/06/2008, 08:14
Avatar de Reznorcito  
Fecha de Ingreso: mayo-2008
Mensajes: 30
Antigüedad: 15 años, 11 meses
Puntos: 0
Respuesta: Ayuda con formato de numero

Muchs gracias a todos !!

La verdad es q probe todas las opciones, y debo decir q la que me funciono fue:

Código PHP:
$numero 9.999;
echo 
floor($numero); // eso imprime 9 
Asi que.. duda aclarada !!
  #8 (permalink)  
Antiguo 06/06/2008, 08:24
Avatar de pateketrueke
Modernizr
 
Fecha de Ingreso: abril-2008
Ubicación: Mexihco-Tenochtitlan
Mensajes: 26.399
Antigüedad: 16 años
Puntos: 2534
Respuesta: Ayuda con formato de numero

disculpa... pero fue adrede!

suerte...

007
__________________
Y U NO RTFM? щ(ºдºщ)

No atiendo por MP nada que no sea personal.
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 13:38.