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

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • [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.
    Last edited by Sebastian W; 19-06-2003, 23: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);

    Comment


    • #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

      Comment


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

        Comment

        Working...
        X