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 :

[POO] Nom de variable multi-niveau dynamique dans un objet


Sujet :

Langage PHP

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Inscrit en
    Mai 2008
    Messages
    317
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 317
    Par défaut [POO] Nom de variable multi-niveau dynamique dans un objet
    Bonjour tout le monde,

    Pour commencer simple, je sais qu'il est possible de créer ou d'appeler (ce qui m'intéresse dans ce cas) un nom de variable composé dynamiquement, par exemple:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $array = (0,1,2,3,4,5,6,7,8,9,10);
    foreach($array as $varName){
       $newVar[] = $var_{$varName};
    }
    ce qui initialisera les variables:
    - $newVar[0] = $var_0,
    - $newVar[1] = $var_1 ....

    je souhaiterai faire la même chose mais sur un objet, et avec plusieurs niveau, je m'explique avec ce petit bout de code:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    $array("peros->login", "fichier->filetype", "fichier->filename->ext");
    foreach($array as $varName){
       $infos[] = $xml->{$varName}
    }
    ce qui devrai donner quelque chose du genre:
    - $infos[0] = $xml->perso->login;
    - $infos[1] = $xml->fichier->filetype;
    - $infos[2] = $xml->fichier->filename->ext;

    quelqu'un sait-il comment faire ?
    Merci =)

    PS: je bosse avec l'objet SimpleXML.

  2. #2
    Expert confirmé
    Avatar de Benjamin Delespierre
    Profil pro
    Développeur Web
    Inscrit en
    Février 2010
    Messages
    3 929
    Détails du profil
    Informations personnelles :
    Âge : 37
    Localisation : France, Alpes Maritimes (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Développeur Web
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Février 2010
    Messages : 3 929
    Par défaut
    Salut

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    class Test { public $var1; public $var2; public $var3; }
     
    $obj = new Test;
    $a = array('var1','var2','var3');
    foreach ($a as $i)
      $obj->$i = "hello";
     
    var_dump($obj);
    Tout simplement

Discussions similaires

  1. [PHP 5.4] POO et BDD, comment utiliser un manager dans un objet métier ?
    Par comode dans le forum Langage
    Réponses: 2
    Dernier message: 05/06/2014, 12h51
  2. Chargement dynamique dans un objet jtree
    Par sroux dans le forum Composants
    Réponses: 1
    Dernier message: 07/12/2009, 02h01
  3. [POO] nom d'objet en variable dynamique
    Par mayadev dans le forum Langage
    Réponses: 3
    Dernier message: 17/04/2009, 15h26
  4. Créer un nom de variable qui s'incrémente dans une boucle
    Par Pietro_L dans le forum Général VBA
    Réponses: 3
    Dernier message: 09/05/2007, 15h10
  5. Réponses: 6
    Dernier message: 23/09/2005, 12h54

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