Object attributes als variable variables

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Object attributes als variable variables

    ich würd gern Objektattribute über Name setzen, etwa folgendermassen:
    PHP-Code:
    class {  
      private 
    $hannes;  
      function 
    set($var,$val) {
        
    $attr "this->$var";   // this->hannes
        
    $$attr $val;              
      }
    }
    $k = new K();
    $k->set('hannes','Wader'); // soll $b->hannes auf 'Wader' setzen 
    Leider bleibt $k->hannes initial...
    Was mache ich falsch?
    Ausserhalb von Klassen klappt doch $$ prima...
    ---
    da drin, in Deinem Kopf, da sieht alles ganz logisch und natürlich aus. Aber wir, wir sind hier. Hier draussen... ;-)

  • #2
    PHP-Code:
    <?php
    class {
      
    //private $hannes;

      
    function set($var,$val) {
        
    $this->$var $val;   // this->hannes
        //${$attr} = $val;
        //echo $this->hannes;
      
    }
    }
    $k = new K();
    $k->set('hannes','Wader'); // soll $b->hannes auf 'Wader' setzen
    echo $k->hannes;
    ?>
    unter php4.3 geht das so wunderbar
    Kissolino.com

    Kommentar


    • #3
      geht auch mit PHP5!
      Leider aus dem PHP-Manual nicht ohne weiteres ersichtlich.
      Lieben Dank,
      Dirk
      ---
      da drin, in Deinem Kopf, da sieht alles ganz logisch und natürlich aus. Aber wir, wir sind hier. Hier draussen... ;-)

      Kommentar

      Lädt...
      X