IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Langage PHP Discussion :

Affichage de float


Sujet :

Langage PHP

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 4
    Points : 3
    Points
    3
    Par défaut Affichage de float
    Bonjour

    Attention, ma question peut paraitre très con...
    Mon souci :

    Comment obtenir à l'affichage "065.00" quand la variable est égale à 65?

    J'ai tenté avec printf("%03.2f",65); mais ça donne "65.00"

    J'avais prévenu, question con...

  2. #2
    Membre régulier
    Inscrit en
    Juin 2009
    Messages
    104
    Détails du profil
    Informations personnelles :
    Âge : 51

    Informations forums :
    Inscription : Juin 2009
    Messages : 104
    Points : 120
    Points
    120
    Par défaut
    hello

    un truc dans ce genre ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
     
    $str = 65;
    function nombrezero ($montant) {
       $avant_virgule = 3; # le nombre souhaité de 0 en début de chaîne
       $apres_virgule = 2; # le nombre souhaité de 0 en fin de chaîne
       $explo = explode(".", $montant); # afin de voir si il y a des décimales
     
       # apres_virgule
       if ($explo[1] > 0) { 
          $str1 = $explo[1].str_repeat('0', $apres_virgule - strlen($explo[1]));
       } else {
          $str1 = str_repeat('0', $apres_virgule);
       }
     
       # apres_virgule
       $str0 = str_repeat('0', $avant_virgule - strlen($explo[0])).$explo[0]; 
     
       return $str0.'.'.$str1;
    }
    echo nombrezero($str);

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 060
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 060
    Points : 1 357
    Points
    1 357
    Par défaut
    Bonjour,

    Ou comme ça :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    <?php
      $valeur = 65;
      echo str_pad(number_format($valeur, 2), 6, 0, STR_PAD_LEFT);
    ?>

  4. #4
    Membre averti Avatar de Philcmoi
    Homme Profil pro
    Inscrit en
    Juillet 2006
    Messages
    666
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Juillet 2006
    Messages : 666
    Points : 412
    Points
    412
    Par défaut
    c'est un problème à mon avis de serveur SGBD. Pour MYSQL il faut préciser lors de la création de la table
    Les types NUMERIC et DECIMAL sont considérés comme identiques par MySQL, comme l'autorise le standard SQL92. Ils sont utilisées par des valeurs dont il est primordial de conserver la précision exacte, comme pour des données financières. Lorsque vous déclarez des colonnes avec l'un de ces types, vous pouvez indiquer la précision et l'échelle comme ceci :
    salaire DECIMAL(5,2)
    Dans cet exemple, 5 (précision) représente le nombre de décimales signifiantes qui seront stockées pour les valeurs, et 2 (échelle) représente le nombre de chiffres qui seront stockés après le point des décimales.
    Il faut voir suivant les normes de précision de la table

  5. #5
    Candidat au Club
    Profil pro
    Inscrit en
    Octobre 2009
    Messages
    4
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2009
    Messages : 4
    Points : 3
    Points
    3
    Par défaut
    Merci Jeca

    La fonction str_pad ( que je connaissais pas ) complète comme il faut le nombre avec des zéros à gauche.
    Associé au format number pour obtenir les deux chiffres après la virgule...

    C'est nickel et très simple à coder.
    Merci bien!

Discussions similaires

  1. Indenter l'affichage de float via printf
    Par darkwall_37 dans le forum Débuter
    Réponses: 2
    Dernier message: 27/09/2010, 14h33
  2. Affichage des floats/doubles
    Par Zenol dans le forum Bibliothèque standard
    Réponses: 9
    Dernier message: 11/11/2008, 23h15
  3. Affichage de float
    Par lovelace dans le forum Servlets/JSP
    Réponses: 1
    Dernier message: 24/01/2008, 17h23
  4. Format d'affichage de float avec E
    Par Mohammmed dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 20/09/2007, 15h02
  5. Serveur anglais affichage de FLOAT en français
    Par olivier_nicollet dans le forum XMLRAD
    Réponses: 5
    Dernier message: 23/05/2005, 10h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo