Page 1 sur 1

Convertir 5e+08 en un chiffre normal

Posté : 05 mai 2006, 06:54
par PJ82491
Bon j'ai j'aimerai savoir comment convertir 5e+08 en son équivalent décimal (ici : 5000000).

Merci ;)

Posté : 05 mai 2006, 07:30
par Ripat
Bonjour,

Simplement par transtypage:
echo (int) 5e+8;

Posté : 05 mai 2006, 07:33
par PJ82491
J'ai déjà essyé
<?php 
echo (int)$donnees['pts_ml']; //affiche 5 et pas 5000000
?>

Posté : 05 mai 2006, 07:39
par momox
As tu essayé la solution qui t'a été donné sur le SdZ par shepard?
@+

Posté : 05 mai 2006, 07:44
par PJ82491
Oui, regardez :
 <?php
  $reponse = mysql_query("SELECT CAST([pts_ml] AS integer) AS pts_ml FROM ml") or die(mysql_error());
  $donnees = mysql_fetch_array($reponse);
  echo $donnees['pts_ml'];
  ?>  
Ereure retournée :
Erreur de syntaxe près de '[pts_ml] AS integer) AS pts_ml FROM ml' à la ligne 1

Posté : 05 mai 2006, 08:10
par Ripat
C'est normal. Les arguments du transtypage par (int) ou intval() ne peuvent pas être des chaînes de caractères sous peine d'arrondis non voulus.

On peut utiliser les transtypages automatiques de PHP et tromper la bête!
<?php
echo (int) 0 + $donnees['pts_ml'];
?>

Posté : 05 mai 2006, 18:15
par PJ82491
Ca marche impécvable bravo !