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 :

Récupérer un nom de variable passé en argument


Sujet :

Langage PHP

  1. #1
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut Récupérer un nom de variable passé en argument
    Bonjour

    Voila dans une classe, j'ai la fonction suivante avec un nombre d'arguments variable.

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    public function Assign() {
          $liste = func_get_args()
          foreach ($liste as $valeur) {
          echo $valeur;
          }
    ...
    ...
    Assign($popo, $pepe, $poinpoin);
    Je voulais savoir s'il existait un mot clé ou une technique qui permettait de récuperer le nom de la variable passé à la base en argument.
    Car je voudrais faire quelquechose comme

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    ...
    foreach ($liste as $valeur ...) {
    $this->{$nomvariable} = $valeur;
    }
    ...
    Afin d'affecter variablement certains attributs de ma classe.

    Merci

  2. #2
    Membre expert
    Avatar de ThomasR
    Homme Profil pro
    Directeur technique
    Inscrit en
    Décembre 2007
    Messages
    2 230
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 37
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Directeur technique
    Secteur : High Tech - Multimédia et Internet

    Informations forums :
    Inscription : Décembre 2007
    Messages : 2 230
    Points : 3 972
    Points
    3 972
    Par défaut
    Je ne vois pas l'intérêt de garder le "nom" de la variable, mais si tu veux valoriser les variables passées en paramètres et les renvoyer. Tu peux les passer par référence.

  3. #3
    Membre éprouvé
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Points : 963
    Points
    963
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     foreach ($liste as $key=> $valeur) {
          echo "$key ->[$valeur]<br>";
          }

  4. #4
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut
    Citation Envoyé par delphidelphi Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     foreach ($liste as $key=> $valeur) {
          echo "$key ->[$valeur]<br>";
          }
    Merci, mais cette méthode ne marche pas.

    En effet , ça m'affiche :

    0 -> [...]
    1 -> [.....]
    2 -> [ ........ ]

    alors que je voudrais en réalité

    popo -> .....
    pepe -> .....
    poinpoin -> ....

    si j'appelle " Affiche ($popo, $pepe, $poinpoin); "


    Enfin bon, si ça y a pas moyen tant pis pour moi

  5. #5
    Expert éminent sénior
    Avatar de mathieu
    Profil pro
    Inscrit en
    Juin 2003
    Messages
    10 438
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 10 438
    Points : 15 812
    Points
    15 812
    Par défaut
    Citation Envoyé par supertino7 Voir le message
    popo -> .....
    pepe -> .....
    poinpoin -> ....

    si j'appelle " Affiche ($popo, $pepe, $poinpoin); "
    si tu veux retrouver le nom des arguments tu peux passer un tableau en paramètre comme ça par exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    fonction affiche(array $arguments)
    {
        foreach ($arguments as $nom => $valeur) {
            echo "$nom => $valeur<br/>";
        }
    }
     
    affiche(array(
        'pif' => 22,
        'paf' => 'ploum',
        'toto' => FALSE,
    ));

  6. #6
    Membre éprouvé
    Avatar de Montor
    Homme Profil pro
    Autre
    Inscrit en
    Avril 2008
    Messages
    879
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Autre

    Informations professionnelles :
    Activité : Autre

    Informations forums :
    Inscription : Avril 2008
    Messages : 879
    Points : 963
    Points
    963
    Par défaut
    Je ne sais pas si tu as résolu ton problème mais voila ce petit code beaucoup plus original
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    function test($k,$b,$j)
    {
    foreach (get_defined_vars() as $key=>$val)
    	{
    		echo "$key ->[$val]<br>";
    	}
    }
     
    test('aaa','bbb','cccc');
    // Affiche 
    // k ->[aaa]
    // b ->[bbb]
    // j ->[cccc]

  7. #7
    Membre du Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    124
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2008
    Messages : 124
    Points : 57
    Points
    57
    Par défaut
    Merci les gens

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

Discussions similaires

  1. Récupérer un nom de variable
    Par nono17pero dans le forum x86 16-bits
    Réponses: 5
    Dernier message: 17/07/2011, 00h22
  2. récupérer les noms des variables
    Par socrate88 dans le forum C
    Réponses: 4
    Dernier message: 03/06/2011, 11h16
  3. récupérer un nom de variable en chaîne de caractères
    Par Tchef dans le forum Général Python
    Réponses: 5
    Dernier message: 15/02/2011, 09h42
  4. Tester une variable passée en argument
    Par jameson dans le forum Langage
    Réponses: 6
    Dernier message: 11/02/2011, 19h58
  5. [try except keyerror] récupérer le nom de la variable
    Par jean-jacques varvenne dans le forum Général Python
    Réponses: 2
    Dernier message: 03/03/2005, 17h59

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