eval und dynamische Variablen

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

  • eval und dynamische Variablen

    ist es möglich mit eval() eine dynamische variable zu defieren?

    etwa so aber funktioniert nicht

    PHP-Code:
    $variable '$test[0][0]';
    $wert 'test wert';
    echo 
    $variable//sollte $test[0][0] anzezeigen
    eval("$variable = $wert;");
    echo 
    $test[0][0]; 
    gibt nur fehler aus
    was ist falsch?

    danke

  • #2
    meine güte, du hampelst dir aber einen zurecht mit deinem script. hast
    du das "dynamische array " jetzt verworfen oder nicht gelesen?
    Kissolino.com

    Kommentar


    • #3
      hab vergessen dir noch danke zu sagen für deinen ansatz.
      ich habe alles wieder über den haufen geworden. leider ist diese methode nur für 2-Ebenen geeignet. zusätzlich habe ich nicht für jedes untermenu ein eigenen Ordner.Zusätzlich habe ich bis zu 5 Ebenen, die dynamisch ändern.
      ich habe alles schon umgeschrieben und es funktioniert bis auf die erzeugung der eval.

      Kommentar


      • #4
        Re: eval und dynamische Variablen

        eval is evil!

        setze es nicht ein, wenn es nicht unbedingt sein muss ...


        und zum thema variable variablen kuckst du mal hier im manual nach.
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          so müsste es gehen

          PHP-Code:
          eval("\$variable = $wert;"); 

          Kommentar


          • #6
            habe es unterdessen herausgefunden

            PHP-Code:
            $variable 'test[0][0]'//-> '$'-Zeichen wird weggelassen
            $wert 'test wert';
            echo 
            $variable//sollte $test[0][0] anzezeigen
            eval("\$$variable = $wert;"); //-> '\$' wird nicht interpretiert / $variable wurd duch 'test[0][0] ersetz
            echo $test[0][0];
            // gibt 'test wert' aus 
            beispiel erweitern

            PHP-Code:
            for($i=0;$i<20;$i++){
              for(
            $o=0;$o<10;$o++){
                
            $variable 'test['.$i.']['.$o.']'// wird geloopt
                
            $wert = ($i+1)*($o+1);
                eval(
            "\$$variable = $wert;"); //-> '\$' wird nicht interpretiert / $variable wurd duch 'test[0][0] ersetz
              
            }
            }
            echo 
            "<pre>";
            print_r ($test);
            echo 
            "</pre>";

            /* Augabe

            test[0][0] = 1
            test[0][1] = 2
            .
            .
            .
            */ 

            Kommentar

            Lädt...
            X