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 :

Ecrire un entier sur 5 digits


Sujet :

Langage PHP

  1. #1
    FFF
    FFF est déconnecté
    Membre actif Avatar de FFF
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 342
    Points : 282
    Points
    282
    Par défaut Ecrire un entier sur 5 digits
    Bonjour,

    je cherche un moyen d'écrire un entier < 100 000 écris sur 5 digits :
    ex :
    1 devient 00001
    1111 devient 01111
    86 devient 00086

    merci.

  2. #2
    Rédactrice
    Avatar de xave
    Femme Profil pro
    Développeur Web
    Inscrit en
    Mai 2002
    Messages
    871
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 46
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Développeur Web

    Informations forums :
    Inscription : Mai 2002
    Messages : 871
    Points : 1 094
    Points
    1 094
    Par défaut
    J'vois pas où est la difficulté????

    Tu veux les écrire où tes entiers? Avec quoi? Quel est ton problème exactement?

  3. #3
    Membre chevronné
    Avatar de Bidouille
    Inscrit en
    Mars 2003
    Messages
    1 275
    Détails du profil
    Informations forums :
    Inscription : Mars 2003
    Messages : 1 275
    Points : 1 992
    Points
    1 992
    Par défaut
    number_format ou sprintf
    Rédacteur PHP / Delphi ADO / Novell / OpenOffice.org

    Inutile de m'envoyer vos questions par MP, je ne réponds que par le forum.

  4. #4
    FFF
    FFF est déconnecté
    Membre actif Avatar de FFF
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 342
    Points : 282
    Points
    282
    Par défaut
    Ok j'ai trouvé mon bonheur avec la fonction printf () :

    <?php
    $s = 'monkey';
    $t = 'many monkeys';

    printf("[%s]\n", $s); // affichage d'une chaîne standard
    printf("[%10s]\n", $s); // justification à droite avec des espaces
    printf("[%-10s]\n", $s); // justification à gauche avec des espaces
    printf("[%010s]\n", $s); // l'espacement nul fonctionne aussi sur les chaînes
    printf("[%'#10s]\n", $s); // utilisation du caractère personnalisé de séparation '#'
    printf("[%10.10s]\n", $t); // justification à gauche mais avec une coupure à 10 caractères
    ?>

    L'exemple ci-dessus va afficher :

    [monkey]
    [ monkey]
    [monkey ]
    [0000monkey]
    [####monkey]
    [many monke]
    source :
    http://fr2.php.net/manual/fr/function.sprintf.php

    Et pour mon exemple j'ai utilisé :
    sprintf("%5s", 45);
    qui donne 00045

    Merci encore !

  5. #5
    Membre éclairé
    Avatar de genova
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 487
    Points : 790
    Points
    790
    Par défaut
    Tu peux aussi faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    $str = strval($ton_nombre);
    while (strlen($str) < 5)
    {
       $str = '0' . $str;
    }
    echo $str;
    Testez le forum Fire Soft Board, un forum libre, gratuit et français.

    Système de template de phpBB - Lisez la FAQ PHP avant toute question si vous débuttez en PHP.

  6. #6
    FFF
    FFF est déconnecté
    Membre actif Avatar de FFF
    Profil pro
    Inscrit en
    Mai 2002
    Messages
    342
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2002
    Messages : 342
    Points : 282
    Points
    282
    Par défaut
    Merci pour le conseil, j'y ai pensé au le début, mais j'ai souvent plus confiance aux fonctions PHP existantes plutôt qu'à mes bidoulles surtout du pojnt de vue de la sécurité et de la rapidité du script.
    Me "trompe-je" ?

  7. #7
    Membre éclairé
    Avatar de genova
    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    487
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 487
    Points : 790
    Points
    790
    Par défaut
    Non tu as raison d'utiliser les fonctions PHP innées car elles sont optimisées au maximum, et prennent moins de mémoire, vu que tout est géré en C dans la librairie.

    Mais bon perso c'est juste pour le fun que j'aime bien refaire ce genre de fonction ^^

    Et puis printf() c'est une petite usine a gaz en soi ^^
    Testez le forum Fire Soft Board, un forum libre, gratuit et français.

    Système de template de phpBB - Lisez la FAQ PHP avant toute question si vous débuttez en PHP.

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

Discussions similaires

  1. Ecrire un entier sur N caractères
    Par messahel dans le forum Pascal
    Réponses: 1
    Dernier message: 20/06/2009, 22h28
  2. Ecrire du texte sur une fenêtre de Jeu vidéo (OSD)
    Par zenway dans le forum DirectX
    Réponses: 7
    Dernier message: 07/03/2009, 14h06
  3. Comment ecrire du code sur plusieurs lignes?
    Par tooneygirl dans le forum Access
    Réponses: 5
    Dernier message: 15/06/2005, 16h03
  4. Insérer un entier sur 64 bits dans une base ?
    Par DJZiaK dans le forum SQLite
    Réponses: 1
    Dernier message: 10/05/2005, 17h37
  5. [VMR9][D3D9]ecrire un texte sur une surface
    Par drizztfr dans le forum DirectX
    Réponses: 2
    Dernier message: 13/11/2003, 15h06

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