Foros del Web » Programando para Internet » PHP »

Bugs de PHP o yo estoy haciendo algo mal?

Estas en el tema de Bugs de PHP o yo estoy haciendo algo mal? en el foro de PHP en Foros del Web. <?PHP echo 946744073709551614; // se espera la siguiente salida // 946744073709551614 // pero en el navegador se muestra // 946744073709550000 ?> Pueden probarlo por favor.......
  #1 (permalink)  
Antiguo 10/08/2009, 14:41
Avatar de leeja  
Fecha de Ingreso: octubre-2005
Mensajes: 82
Antigüedad: 18 años, 5 meses
Puntos: 0
Bugs de PHP o yo estoy haciendo algo mal?

<?PHP

echo 946744073709551614;

// se espera la siguiente salida
// 946744073709551614

// pero en el navegador se muestra
// 946744073709550000
?>

Pueden probarlo por favor....
__________________
www.datasegura.net
  #2 (permalink)  
Antiguo 10/08/2009, 14:44
Avatar de lair  
Fecha de Ingreso: enero-2009
Ubicación: header('Location: Morelia");
Mensajes: 1.052
Antigüedad: 15 años, 3 meses
Puntos: 46
Respuesta: Bugs de PHP o yo estoy haciendo algo mal?

lo que pasa es que php esta intentando imprimer ese numero como un float (tal vez porque para int es demaciado grande), por lo que el numero se sale de la cabasidad de ese tipo de dato y por ende lo redondea, lo que puedes hacer es imprimirlo como cadena

echo '946744073709551614';

no se para que estes utilizando ese numero pero cualquier cosa aqui estamos para ayudar

Cita:
jajajaajaja
ni idea porque pero a mi me muestra

9.4674407370955E+17
Twonex es por lo mismo que dije antes, eso que estan haciendo php intenta imprimirlo como numero, no se si en realidad necesite el numero o simplemente necesite esos digitos, de ser asi la solucion seria la que ya plantie

Última edición por lair; 10/08/2009 a las 14:53
  #3 (permalink)  
Antiguo 10/08/2009, 14:48
 
Fecha de Ingreso: julio-2009
Ubicación: .mysql_error ( XD )
Mensajes: 554
Antigüedad: 14 años, 9 meses
Puntos: 13
Respuesta: Bugs de PHP o yo estoy haciendo algo mal?

jajajaajaja
ni idea porque pero a mi me muestra

9.4674407370955E+17
  #4 (permalink)  
Antiguo 10/08/2009, 14:52
Avatar de leeja  
Fecha de Ingreso: octubre-2005
Mensajes: 82
Antigüedad: 18 años, 5 meses
Puntos: 0
Respuesta: Bugs de PHP o yo estoy haciendo algo mal?

<?PHP

echo 18446744073709551615;

?>

esto si funciona... y es mucho mas grande
__________________
www.datasegura.net
  #5 (permalink)  
Antiguo 10/08/2009, 14:55
Avatar de leeja  
Fecha de Ingreso: octubre-2005
Mensajes: 82
Antigüedad: 18 años, 5 meses
Puntos: 0
Cita:
Iniciado por lair Ver Mensaje
lo que pasa es que php esta intentando imprimer ese numero como un float (tal vez porque para int es demaciado grande), por lo que el numero se sale de la cabasidad de ese tipo de dato y por ende lo redondea, lo que puedes hacer es imprimirlo como cadena

echo '946744073709551614';

no se para que estes utilizando ese numero pero cualquier cosa aqui estamos para ayudar
lo necesito para almacenar en Mysql y lo guarda modificado...

estoy creando clases para validar datos para mysql...

tengo problemas con la clase para validar bigint y float..

si modifico esta variable

precision = 20 (php.ini)

ahora en pantalla sale esto

946744073709551616
__________________
www.datasegura.net

Última edición por GatorV; 10/08/2009 a las 21:39
  #6 (permalink)  
Antiguo 10/08/2009, 21:40
Avatar de GatorV
$this->role('moderador');
 
Fecha de Ingreso: mayo-2006
Ubicación: /home/ams/
Mensajes: 38.567
Antigüedad: 17 años, 10 meses
Puntos: 2135
Respuesta: Bugs de PHP o yo estoy haciendo algo mal?

Si vas a trabajar con numeros tan grandes te recomiendo usar la librería BC Math de PHP.

Saludos.
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 20:20.