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 :

Construire une variable et la remplacer par sa valeur


Sujet :

Langage PHP

  1. #1
    Membre habitué
    Avatar de xenos
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    400
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 400
    Points : 197
    Points
    197
    Par défaut Construire une variable et la remplacer par sa valeur
    Bonjour,

    Je dois générer 193 variables qui commencent par "trad_pays_". Ce que j'ai réussi à faire.

    Le problème est que ce sont des variables qui doivent être changées par du texte.

    Grâce à un fichier include :
    - trad_pays_1 = Belgique,
    - trad_pays_2 = France,
    - ...

    Voici le code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    for ($i=1; $i<=194; $i++)
    {
    	$var = "trad_pays_" . $i;
    	echo($var . "<br />");
    }
    Le problème est que seul la liste suivante est générée :
    "trad_pays_1
    trad_pays_2
    trad_pays_3
    ..."

    Mais ces variables doivent être remplacées par leurs valeurs respectives.

    En effet, en écrivant directement :
    "trad_pays_1
    trad_pays_2
    trad_pays_3
    ..."
    dans le fichier .php, lors de l'affichage, elles sont directement changées par leurs valeurs respectives. Et ainsi obtenir :
    "Belgique
    France
    Luxembourg
    ..."

    Comment puis je dés lors faire en sorte que les valeurs soient affichées à la place du nom des variables ?

    D'avance merci pour vos réponses.



    xenos

  2. #2
    Modératrice
    Avatar de Celira
    Femme Profil pro
    Développeuse PHP/Java
    Inscrit en
    Avril 2007
    Messages
    8 633
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 39
    Localisation : France

    Informations professionnelles :
    Activité : Développeuse PHP/Java
    Secteur : Industrie

    Informations forums :
    Inscription : Avril 2007
    Messages : 8 633
    Points : 16 372
    Points
    16 372
    Par défaut
    Bonjour

    A priori ce dont tu as besoin c'est d'afficher les variables $trad_pays_1, $trad_pays_2, etc... C'est bien ça ?

    Donc ce dont tu as besoin, c'est de variables dynamiques. Essaye EDIT : Comment appeler une variable dont le nom est stocké dans une autre variable?

  3. #3
    Membre habitué
    Avatar de xenos
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    400
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 400
    Points : 197
    Points
    197
    Par défaut
    Merci pour ta réponse Célira, mais j'avais déjà trouvé cette réponse.

    Le problème est que j'appelle la variable "trad_pays_1" et non pas "$trad_pays_1" (le signe dollar variant).

    Donc en mettant simplement "trad_pays_1" dans le code, il est traduit par sa valeur : Belgique.

    Du coup avec ton exemple ($$var), il appelle la variable "$trad_pays_1", ce qui fait que rien ne s'affiche vu qu'elle n'existe pas ...

    En fait cette variable "trad_pays_1" vient d'un fichier include dans lequel je stocke la variable en français.

  4. #4
    Membre expert
    Inscrit en
    Janvier 2005
    Messages
    2 291
    Détails du profil
    Informations forums :
    Inscription : Janvier 2005
    Messages : 2 291
    Points : 3 212
    Points
    3 212
    Par défaut
    une variable en PHP est toujours précédée d'un $.
    Dans votre cas vous devez donc surement utiliser des constantes de ce style
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    define ('trad_pays_1', 'Belgique');
    et dans ce cas il faut faire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    constant("trad_pays_" . $i);
    pour récupérer la valeur de la constante (en vérifiant avant avec defined() qu'elle existe bien).

  5. #5
    Membre habitué
    Avatar de xenos
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    400
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Septembre 2005
    Messages : 400
    Points : 197
    Points
    197
    Par défaut
    Merci pour votre aide koopajah et Celira.

    La solution de koopajah fonctionne parfaitement !

    Bon développement à tous.



    xenos

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

Discussions similaires

  1. Transmettre une variable et un select par l'URL
    Par bsidy1 dans le forum Langage
    Réponses: 1
    Dernier message: 06/01/2009, 11h19
  2. Réponses: 8
    Dernier message: 21/11/2008, 14h18
  3. [bash] Construire une variable texte avec retours chariot
    Par vallica dans le forum Shell et commandes GNU
    Réponses: 5
    Dernier message: 21/03/2008, 12h46
  4. [POO] Créer une instance d'un objet par la valeur d'une variable
    Par philworks dans le forum Général JavaScript
    Réponses: 1
    Dernier message: 29/11/2007, 14h27
  5. [JSTL] Mes variables ne sont pas remplacées par leur valeur
    Par thomine dans le forum Taglibs
    Réponses: 9
    Dernier message: 18/03/2005, 10h00

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