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 :

Comment modifier le nom d'une variable?


Sujet :

Langage PHP

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 11
    Points : 6
    Points
    6
    Par défaut Comment modifier le nom d'une variable?
    Bonjour,

    Je récupère du code PHP où il existe un tas de variables du style $nom01, $nom02, $nom03, ....

    J'ai une fonction qui effectue la même chose sur chaque variable, et au lieu de répeter chaque fois le même code sur chacune des variables, j'aimerais faire une boucle for, en incrémentant le suffixe de la variable chaque fois, comme suit :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (i=0; i < 15; i++) {
       $nomxx .= "/n";
    }
    mais où "xx" prend le variable "i" sur 2 chiffres (00, 01, etc).

    (Je pense que c'est lié au ' ' et " ", mais je n'arrive pas).

    Merci par avance pour toute idée.

  2. #2
    Expert éminent sénior

    Profil pro
    Inscrit en
    Juin 2002
    Messages
    6 152
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2002
    Messages : 6 152
    Points : 17 778
    Points
    17 778
    Par défaut
    Cherchez du côté des variables dynamiques :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for ($i = 0; $i < 15; $i++) {
        ${'nom' . sprintf("%02d", $i)} .= "/n"; # \n ?
    }

  3. #3
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    28
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 28
    Points : 30
    Points
    30
    Par défaut
    Je n'ai pas le temps d'écrire un script de test mais je suis sûr que tu dois pouvoir t'en sortir avec la fonction eval() et un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (i=0; i < 15; i++) {
    eval( '$nom' . i . ' .= "/n";' );
    }
    Bon courage,
    Pascal De Oliveira
    RamaPlus

  4. #4
    Membre éprouvé
    Homme Profil pro
    Conseil - Consultant en systèmes d'information
    Inscrit en
    Juin 2003
    Messages
    909
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Suisse

    Informations professionnelles :
    Activité : Conseil - Consultant en systèmes d'information
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2003
    Messages : 909
    Points : 1 014
    Points
    1 014
    Par défaut pas tout à fait
    Citation Envoyé par pdeoliveira
    Je n'ai pas le temps d'écrire un script de test mais je suis sûr que tu dois pouvoir t'en sortir avec la fonction eval() et un truc du genre :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    for (i=0; i < 15; i++) {
    eval( '$nom' . i . ' .= "/n";' );
    }
    Bon courage,
    Pascal De Oliveira
    RamaPlus
    Cela donnerait des variables $nom0, $nom1 au lieu de $nom00, $nom01. De plus tu as oublié le signe $ devant i dans la boucle for.

    Code php : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    for($i=0; $i < 15; $i++){
        if($i < 10) $nom0 . $i;
        else $nom . $i;
    }
    Business, Stratégie, Leadership
    Toujours à l'écoute du marché : Surtout en Suisse ! ;-)

  5. #5
    Futur Membre du Club
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 11
    Points : 6
    Points
    6
    Par défaut
    Merci beaucoup pour les réponses - je vais pouvoir passer de 45 lignes de code à 3 et modifier plus facilement par la suite.

    Merci pour le lien également. J'ai bien cherché sur le forum avant de poster mais je ne savais pas comment appeler les variables qui changent de nom sur le volet.

    David.

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

Discussions similaires

  1. [XSL] Comment modifier la valeur d'une variable?
    Par sorcer1 dans le forum XSL/XSLT/XPATH
    Réponses: 8
    Dernier message: 17/02/2010, 13h26
  2. Réponses: 16
    Dernier message: 28/08/2009, 11h09
  3. Comment modifier la valeur d'une variable?
    Par sebac dans le forum Langage
    Réponses: 4
    Dernier message: 18/06/2009, 00h39
  4. Comment modifier la valeur d'une variable Mysql.
    Par pcsystemd dans le forum SQL Procédural
    Réponses: 6
    Dernier message: 19/09/2007, 08h22
  5. comment modifier le nom d'une colonne via VBA?
    Par Invité dans le forum Access
    Réponses: 6
    Dernier message: 24/11/2005, 15h36

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