PHP - Muestra numero entero como hexadecimal, formulario en php

 
Vista:

Muestra numero entero como hexadecimal, formulario en php

Publicado por Manuel (2 intervenciones) el 06/05/2019 15:13:43
Amigos.
Necesito de su ayuda para visualizar bien un numero entero en un formulario en php, les cuento.

Tengo un formulario donde se ingresa un valor numérico (entero) en un input, ejemplo 15000000 y en la base de datos es de tipo FLOAT.

Al momento de grabar y volver a visualizar el valor registrado, se muestra de esta forma 1.5e+07

Como puedo solucionar este inconveniente.

De antemano gracias por cualquier ayuda.
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Muestra numero entero como hexadecimal, formulario en php

Publicado por Mauro (1037 intervenciones) el 06/05/2019 15:47:16
Hola Manuel:

En principio una aclaración: el número 1.5e+07 no está expresado en hexadecimal si no en notación científica.

Lo que podrías hacer es usar la función number_format.

Aquí tienes un ejemplo:

1
2
3
4
5
<?php
 
$number = 1500000000000000000000000000000000000000000000000000000000000000000000.00;
 
echo number_format( $number, 2, '.', ',').PHP_EOL;
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
2
Comentar

Muestra numero entero como hexadecimal, formulario en php

Publicado por Manuel (2 intervenciones) el 06/05/2019 18:40:08
Mauro, gracias por responder.
estuve revisando y este problema me ocurre solo en el servidor de producción
En mi equipo local me funciona bien y se guarda bien el dato en la base de datos pero en el servidor de producción lo muestra como notación científica 1.5e+07

que puede ser?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Mauro
Val: 2.761
Oro
Ha aumentado 1 puesto en PHP (en relación al último mes)
Gráfica de PHP

Muestra numero entero como hexadecimal, formulario en php

Publicado por Mauro (1037 intervenciones) el 07/05/2019 20:31:37
¿El problema lo tienes al visualizar el número desde php o al almacenarlo en la base?

Quiero decir, ¿cómo está el dato almacenado en la base? ¿Qué motor de base de datos usas?

Otra cosa que podría estar generando la discrepancia son las versiones del software de base (Sistema operativo, motor de db, el propio intérprete de php, etc...) verifica que todos coincidan entre sí.

Algo que encontré que podría arrojar algo de luz sobre el tema es la directiva precision.

Haz esta prueba:

1
2
3
4
5
6
7
<?php
 
ini_set('precision', 2000);
$number = 1500000000000000000000000000000000000000000000000000000000000000000000.00;
 
echo 'Regular print: ', $number, PHP_EOL;
echo 'Formated output: '.number_format( $number, 2, '.', ',').PHP_EOL;

Cambiando los valores del segundo parámetro de ini_set a ver qué te da..
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar