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 :

Format d'affichage des nombres [Fait]


Sujet :

Langage PHP

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Points : 89
    Points
    89
    Par défaut Format d'affichage des nombres
    Bonjour, je voudrais afficher sur une page des nombres relativements grands, et pour faciliter la lecture, je voudrais transformer par exemple 512345612779 en 512.345.612.779. J'ai donc écris ces lignes :

    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
    $carbone = strrev($carbone);
     
     
    $boucle = "0";
    $variableaffichee = "";
    while ($carbone[$boucle])
    {
    $variableaffichee = $variableaffichee.$carbone[$boucle];
    $boucle++;
    $variableaffichee = $variableaffichee.$carbone[$boucle];
    $boucle++;
    $variableaffichee = $variableaffichee.$carbone[$boucle];
    $boucle++;
    $variableaffichee = $variableaffichee.".";
     
     
    }
    $carbone = substr($variableaffichee, 0, -1);
    $carbone = strrev($carbone);
    Mais je me retrouve avec un léger problème. Pour info, ces lignes ce suivent encore deux fois avec des ressources différentes. Lors de l'affichage, les nombres sont bel et bien transformés avec les points, mais j'ai des fois des nombres qui n'apparaissent pas ou dont seul le début est affiché. Quelqu'un a une idée, soit pour trouver l'erreur soit pour faire la même chose d'une autre manière ?

    Merci

  2. #2
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Jrai pas lu ton code, trop la flemme, mais je me permet de faire un copier/coller d'une fonction que j'ai écrite pour l'un des mes projets à moi :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function ShowCash($val)
    {
            $tmp = '';
            while(strlen($val) > 3)
            {
                    $tmp = '.'.substr($val,strlen($val)-3).$tmp;
                    $val = substr($val, 0, strlen($val)-3);
            }
            $tmp = $val.$tmp;
            return $tmp.' $';
    }
    (c'est des $ ^^)
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  3. #3
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    685
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Points : 658
    Points
    658
    Par défaut
    wordwrap permet de faire ça simplement.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $x = (string)512345612779;
     
    echo wordwrap($x, 3, '.', 1);

  4. #4
    Membre confirmé
    Inscrit en
    Mai 2002
    Messages
    673
    Détails du profil
    Informations forums :
    Inscription : Mai 2002
    Messages : 673
    Points : 624
    Points
    624
    Par défaut
    Arf, en plus, je crois que je l'avais deja vu vette fonction :p
    Bha voila... ma fonction est inutile lol !
    Si vous avez un message d'erreur, n'oubliez pas de le lire, la réponse à votre problème est surement dedans !

  5. #5
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Points : 89
    Points
    89
    Par défaut
    Ok, merci beaucoup, je vais tester ca

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par Xunil
    wordwrap permet de faire ça simplement.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    $x = (string)512345612779;
     
    echo wordwrap($x, 3, '.', 1);

    Cette fonction la renvoie
    au lieux de
    Je vais donc tester l'autre

  7. #7
    Membre régulier
    Profil pro
    Inscrit en
    Janvier 2007
    Messages
    132
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2007
    Messages : 132
    Points : 89
    Points
    89
    Par défaut
    Citation Envoyé par gloubi
    Jrai pas lu ton code, trop la flemme, mais je me permet de faire un copier/coller d'une fonction que j'ai écrite pour l'un des mes projets à moi :


    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    function ShowCash($val)
    {
            $tmp = '';
            while(strlen($val) > 3)
            {
                    $tmp = '.'.substr($val,strlen($val)-3).$tmp;
                    $val = substr($val, 0, strlen($val)-3);
            }
            $tmp = $val.$tmp;
            return $tmp.' $';
    }
    (c'est des $ ^^)

    Celle ci fonctionne très bien, merci

  8. #8
    Membre éclairé
    Inscrit en
    Septembre 2006
    Messages
    685
    Détails du profil
    Informations forums :
    Inscription : Septembre 2006
    Messages : 685
    Points : 658
    Points
    658
    Par défaut
    Ah, le nombre de chiffres est variable.

    Sinon, encore plus simple.

    Code PHP : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $n = 4881570;
    echo number_format($n, 0, '', '.');


+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Format d'affichage des nombres
    Par Surikat14 dans le forum MATLAB
    Réponses: 4
    Dernier message: 27/07/2007, 11h33
  2. Réponses: 14
    Dernier message: 07/06/2006, 09h28
  3. Affichage des nombres réels!
    Par smail21 dans le forum Bases de données
    Réponses: 4
    Dernier message: 17/11/2005, 17h49
  4. DBGrid et format d'affichage des colonnes
    Par jakouz dans le forum Composants VCL
    Réponses: 3
    Dernier message: 03/08/2005, 14h10
  5. [VB6] [Flexgrid] Format d'affichage des numériques
    Par yansolo dans le forum VB 6 et antérieur
    Réponses: 5
    Dernier message: 19/10/2002, 21h00

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