[OOP] $obj = (object) "test"; erweitern!?

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

  • [OOP] $obj = (object) "test"; erweitern!?

    Hi,

    vielleicht kennst der ein oder andere aus AS (glaube bei JS kann mans auch so schreiben):
    // Object
    obj = {var1:"wert1",var2:"wert2"};

    // Ausgabe: wert1
    trace(obj.var1);

    Bei PHP hat man ja die Möglichkeit ein Object so einzuleiten:
    PHP-Code:
    $obj = (object) "test";
    echo 
    $obj->scalar
    Nur wie bekommt man da mehrere Variblen mit rein, ohne das so schreiben:
    PHP-Code:
    class obj {
         var 
    $vari;
         function 
    obj() {
             
    $this->vari1 $vari;
        }

    zu müßen?

    Möcht gern so was, in PHP realisieren:

    function meine_funktion(obj) {
    for(var i in obj) trace(obj[i]);
    }

    meine_funktion({vari1:"wert1",vari2:"wert2"});

    ohne dabei jedes mal mit new ein Object zu initalisieren.

    Würd mich auf Antworten freuen, die nicht nur nach dem "Warum?" fragen.
    Zuletzt geändert von Sebastian W; 20.06.2003, 00:26.
    Grüsse,
    Sebastian


    Profil Flex Freelancer
    Twitter twitter.com/flashhilfe
    Web Flash und Flex Community

  • #2
    Bin nicht sicher ob ich dich richtig verstehe, aber meinst Du das so:

    $neues_objekt = neues_objekt_anlegen("{wert1:123;wert2:334 }")

    zurückgegeben wird dann ein Objekt mit den Eigenschaften
    $neues_objekt->wert1 = 123
    $neues_objekt->wert2 = 334

    ?

    Wenn ja: Recht simpel. Werte-Array mit explode() parsen und mit eval() die Variablen zuweisen, z.B. so:

    eval('$neues_objekt->'.$variablenname.' = '.$wert);

    Kommentar


    • #3
      Hi Pekka,

      so was meinte ich:
      PHP-Code:
      function neues_objekt_anlegen($neues_objekt) {
          echo 
      $neues_objekt->wert1;
          echo 
      $neues_objekt->wert2;
      }

      neues_objekt_anlegen({wert1:123,wert2:334}); 
      Aber direkt, scheint es ja leider nicht möglich zu sein.

      Na ja, dann muß ich das doch anders machen

      Schade.

      Aber danke für deine Antwort.
      Grüsse,
      Sebastian


      Profil Flex Freelancer
      Twitter twitter.com/flashhilfe
      Web Flash und Flex Community

      Kommentar


      • #4
        Hmm, direkt in PHP implementiert ist das nicht, aber möglich ist es schon. Halt nicht mit geschweiften Klammern ohne Anführungszeichen.

        Kommentar

        Lädt...
        X