Convertir 5e+08 en un chiffre normal

Petit nouveau ! | 8 Messages

05 mai 2006, 06:54

Bon j'ai j'aimerai savoir comment convertir 5e+08 en son équivalent décimal (ici : 5000000).

Merci ;)

ViPHP
ViPHP | 1380 Messages

05 mai 2006, 07:30

Bonjour,

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

Petit nouveau ! | 8 Messages

05 mai 2006, 07:33

J'ai déjà essyé
<?php 
echo (int)$donnees['pts_ml']; //affiche 5 et pas 5000000
?>

Mammouth du PHP | 1511 Messages

05 mai 2006, 07:39

As tu essayé la solution qui t'a été donné sur le SdZ par shepard?
@+

Petit nouveau ! | 8 Messages

05 mai 2006, 07:44

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

ViPHP
ViPHP | 1380 Messages

05 mai 2006, 08:10

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'];
?>
ripat

Petit nouveau ! | 8 Messages

05 mai 2006, 18:15

Ca marche impécvable bravo !