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 :

Séparer les nombre apres la virgule [PHP 5.2]


Sujet :

Langage PHP

  1. #1
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut Séparer les nombre apres la virgule
    Bonjour,

    Il y aurait il une solution pour départager un nombre de ses virgules?

    par exemple, 1.11, j'aimerais avoir le 1 dans une variable et le 11 dans une autre?

    Merci
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    explode ?

  3. #3
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Ben j'avais essyaé le explode mais ca n'a pas marché.

    J'ai fait ceci et ca marche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $num=129;
    $avant_virgule = floor($num / 100);
    $apres_virgule = (($num/100)-$avant_virgule)*100;
    echo $avant_virgule.(floor($apres_virgule / 10) * 10);
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  4. #4
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    Citation Envoyé par pierrot10 Voir le message
    Ben j'avais essyaé le explode mais ca n'a pas marché.

    J'ai fait ceci et ca marche

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $num=129;
    $avant_virgule = floor($num / 100);
    $apres_virgule = (($num/100)-$avant_virgule)*100;
    echo $avant_virgule.(floor($apres_virgule / 10) * 10);
    c'est l'inverse que tu fais la

  5. #5
    Membre à l'essai
    Profil pro
    Inscrit en
    Octobre 2010
    Messages
    23
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2010
    Messages : 23
    Points : 21
    Points
    21
    Par défaut
    j'ai l'impression que tu te compliques beaucoup, pourquoi le explode ne fonctionne pas?

  6. #6
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Salut,

    Il faut modifier le type (transtypage).

    La modification de types en PHP fonctionne de la même façon qu'en C : le nom du type désiré est écrit entre parenthèses avant la variable à traiter.

    Source : Manipulation des types
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    $nombre = 3.14;
    $pieces = explode('.', (string)$nombre);

  7. #7
    Expert éminent sénior

    Profil pro
    Inscrit en
    Septembre 2010
    Messages
    7 920
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2010
    Messages : 7 920
    Points : 10 726
    Points
    10 726
    Par défaut
    ou plus propre faire strval

  8. #8
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Merci a tous pour vos réponses.

    J'ai encore un petit probleme.
    Si je sépare 100 dans deux variable
    $var1 = 1;
    $var2 = 00;

    J'ai absolument besoin que $var2 garde 00.
    Dans ce cas $var2 deviens egal à 0. Le deuxieme 0 est suprimer.

    Comment puis-je faire pour que $var2 rgarde la valeur de 00?

    Encore merci
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

  9. #9
    Membre émérite
    Avatar de Eric2a
    Homme Profil pro
    Technicien
    Inscrit en
    Septembre 2005
    Messages
    1 225
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 53
    Localisation : France, Corse (Corse)

    Informations professionnelles :
    Activité : Technicien

    Informations forums :
    Inscription : Septembre 2005
    Messages : 1 225
    Points : 2 411
    Points
    2 411
    Par défaut
    Séparer 1.00 tu voulais dire ?

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    $nombre=1;
     
    $str=sprintf('%01.2f',$nombre);		// $str='1.00';
    list($var1,$var2)=explode('.',$str);	// $var1='1' ; $var2='00'

  10. #10
    Débutant  
    Profil pro
    Inscrit en
    Mai 2005
    Messages
    3 096
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Mai 2005
    Messages : 3 096
    Points : 944
    Points
    944
    Par défaut
    Merci pour ta réponse,
    mais j'ai transformer mon code ainsi
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    $apres_virgule = sprintf('%01.2f',(($num/100)-$avant_virgule)*100);
    et c'est la variable $apres_virgule qui doit gardé la valeur de 00
    Il ne suffit pas de tout savoir. Vouloir et persévérer, c'est déjà presque tout!

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

Discussions similaires

  1. Préciser les nombres après la virgule
    Par zerkos dans le forum VB.NET
    Réponses: 2
    Dernier message: 24/07/2012, 15h25
  2. Afficher les nombres après la virgule
    Par ghir_ana dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 20/02/2012, 12h30
  3. Comment séparer les nombres à virgule ex : 25,35
    Par kraken972 dans le forum Langage
    Réponses: 3
    Dernier message: 15/05/2008, 22h23
  4. Limité les nombres après la virgule
    Par touchkad dans le forum Langage
    Réponses: 4
    Dernier message: 17/09/2007, 10h37
  5. Limiter les nombres après la virgule
    Par lebigboss dans le forum Langage
    Réponses: 3
    Dernier message: 24/07/2007, 11h39

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