Anzeige

variablenname aus variablen erzeugen

variablenname aus variablen erzeugen | PSD-Tutorials.de

Erstellt von iPhil, 05.10.2008.

  1. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    variablenname aus variablen erzeugen
    Hi,
    ich bin grade auf PHP5 umgestiegen und bin auf ein kleines Problem gestoßen.
    Früher konnte ich Variablen-Namen aus variablen erzeugen.
    PHP:
    1.  
    2. <?
    3. $i    = 1;
    4. $fx1 = 'hallo';
    5. echo $fx{$i};
    6. ?>
    7.  
    läuft das heute anders? oder wie ist das.

    danke schonmal,
    gr Phil
     
    #1      
  2. Flegma

    Flegma Nicht mehr ganz neu hier

    Dabei seit:
    22.04.2007
    Beiträge:
    164
    Geschlecht:
    männlich
    Ort:
    Berlin
    Software:
    C4D; Netbeans; PS CS5; Gimp
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    versteh schon was du probierst, aber kann mir kaum vorstellen dass das so mal Funktioniert hat naja hab mal was rausgesucht vlt. hilfts ja...PHP: Variable Variablen - Manual
     
    #2      
  3. iPhil

    iPhil Noch nicht viel geschrieben

    Dabei seit:
    13.07.2008
    Beiträge:
    15
    Geschlecht:
    männlich
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    kenn ich schon, danke. half mir leide nicht.
     
    #3      
  4. sokie

    sokie Mod | Web

    Dabei seit:
    23.03.2008
    Beiträge:
    5.338
    Geschlecht:
    männlich
    Ort:
    Bünde NRW
    Software:
    <br>COREL <br> Texteditor
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    mit eval() könnte das funktionieren, zB:
    Code (Text):
    1.  
    2. <?
    3. $i    = 1;
    4. $fx1 = 'hallo';
    5. $zusammen = "\$fx".$i;
    6. eval("\$zusammen = \"$zusammen\";");
    7. echo $zusammen;
    8. ?>
    9.  
     
    #4      
  5. blackout

    blackout Schaf im Wolfspelz

    Dabei seit:
    12.09.2005
    Beiträge:
    3.359
    Geschlecht:
    männlich
    Ort:
    Würzburg
    Kameratyp:
    Rollei 35 S
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    1. eval() ist pfui
    2. beschreib das problem mal genauer. so wie du das oben beschrieben hast ist ein array in alter schreibweise gemeint; versuch's vielleicht mal mit [] statt {}.
     
    #5      
  6. Guin

    Guin Nicht mehr ganz neu hier

    Dabei seit:
    18.04.2008
    Beiträge:
    186
    Geschlecht:
    männlich
    Ort:
    Lübeck
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Moin.

    Der Link von Flegma hilft dir weiter.

    PHP:
    1. <?php
    2. $i    = 1;
    3. $fx1 = 'hallo';
    4. echo ${"fx".$i};
    5. echo ${"fx$i"};
    6. ?>
     
    #6      
  7. blackout

    blackout Schaf im Wolfspelz

    Dabei seit:
    12.09.2005
    Beiträge:
    3.359
    Geschlecht:
    männlich
    Ort:
    Würzburg
    Kameratyp:
    Rollei 35 S
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Mal was Anderes: Alles, was man mit variablen Variablennamen machen kann, geht auch ohne - und das meistens schöner.
     
    #7      
  8. Flegma

    Flegma Nicht mehr ganz neu hier

    Dabei seit:
    22.04.2007
    Beiträge:
    164
    Geschlecht:
    männlich
    Ort:
    Berlin
    Software:
    C4D; Netbeans; PS CS5; Gimp
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    hey,

    vlt. kannst du wirklich nochmal genauer erklären was du vorhast. Außerdem finde ich es eig. ein erhöhtes Sichehitsrisiko wenn du die Variablen variabel benennen lässt. Ich geh mal davon aus, dass du aus einem $_GET.. Parameter eine Variable basteln möchtest, wobei du damit die Sicherheit deines Programms aufs Spiel setzt, da der böse Hacker direkten Zugriff auf deinen Quellcode hat. Aber ich bin für alles offen. Wir finden schon ne lösung :)
     
    #8      
  9. Puschkin

    Puschkin Noch nicht viel geschrieben

    Dabei seit:
    11.09.2008
    Beiträge:
    24
    Geschlecht:
    männlich
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Ich würde dir ganz dringend zu Arrays raten!

    $bla["test"]="hallo";
    $i="test";
    echo $bla[$i];

    so z.b.

    auf de.php.net findest du noch viel mehr zu arrays. variable variablen sind, wie Flegma schon sagt, nicht gerade das sicherste. Eval() ist auch nicht gerade die schönste und effizienteste Methode.
     
    #9      
  10. montolio

    montolio Noch nicht viel geschrieben

    Dabei seit:
    23.07.2008
    Beiträge:
    1
    Geschlecht:
    männlich
    variablenname aus variablen erzeugen
    es müsste auch sowas in der Art funktionieren:

    PHP:
    1.  
    2. <?
    3. $i    = 1;
    4. $fx1 = 'hallo';
    5. $var = 'fx'.$i;
    6. echo $$var;
    7.  
     
    #10      
  11. Guin

    Guin Nicht mehr ganz neu hier

    Dabei seit:
    18.04.2008
    Beiträge:
    186
    Geschlecht:
    männlich
    Ort:
    Lübeck
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Ja tut es. Das ist die lange Variante von

    PHP:
    1. echo ${"fx".$i};
     
    #11      
  12. Christian

    Christian verpeilt & verschallert

    Dabei seit:
    03.03.2005
    Beiträge:
    853
    Geschlecht:
    männlich
    Kameratyp:
    Canon EOS 300D
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Wie blackout schon festgestellt hat, und das ist auch meine Meinung:
    Das was Du machst ist Quatsch, und lässt sich nur ganz ganz schwer lesen.
    "Ja und? Muss ja kein anderer verstehen!" Wirst Du mit Sicherheit denken, aber glaub mir, wenn Du dich in 2-3 Wochen nochmal ransetzt, weil Du was verbessern willst, wirst auch Du nicht mehr durch das durchsteigen, was Du geschrieben hast. Das ist generell immer so, also gewöhn' Dir gar nicht erst an unsauber zu coden.

    Meine Empfehlung was variable Variablen angeht: In 90% aller Fälle ist es einfacher mit Arrays zu arbeiten, 9% mit Objekten und 1% mit variablen Variablen.
     
    #12      
  13. blackout

    blackout Schaf im Wolfspelz

    Dabei seit:
    12.09.2005
    Beiträge:
    3.359
    Geschlecht:
    männlich
    Ort:
    Würzburg
    Kameratyp:
    Rollei 35 S
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Ich hab noch nie variable Variablen gebraucht, meiner Meinung nach sind die bestenfalls zum Hacken zu gebrauchen. Hab auch erst sehr spät von den Dingern überhaupt erfahren.
     
    #13      
  14. mercyful

    mercyful Noch nicht viel geschrieben

    Dabei seit:
    25.06.2007
    Beiträge:
    3
    Geschlecht:
    männlich
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    Welchen Sinn sollen variable Variablen haben? Deren Zustand ist doch nur 50/50 vorhersagbar. Nimm ein Array ;), das kannst Du gezielt ansprechen und weißt genau was da drinnen steht!
     
    #14      
  15. Christian

    Christian verpeilt & verschallert

    Dabei seit:
    03.03.2005
    Beiträge:
    853
    Geschlecht:
    männlich
    Kameratyp:
    Canon EOS 300D
    variablenname aus variablen erzeugen
    AW: variablenname aus variablen erzeugen

    naja ich hab variable Variablen genau in einem von 100 Fällen gebraucht.

    und zwar war ich es leid, ständig für ein und die selbe Aktion immer variablen statt einfacher Funktionen zuweisen zu müssen.
    PHP:
    1. function set_array_( $varname ){
    2.   global $$varname;
    3.   $$varname = conv_obj($$varname);
    4. }
    5.  
    6. //angenehmer zu schreiben
    7. set_array_('foo');
    8. set_array_('bar');
    9.  
    10. //statt
    11. $foo = conv_obj($foo);
    12. $bar = conv_obj($bar);
    13.  
    Wenn man letzteres bis zu 20 mal in einem Script hat, kann es schon gehörig auf die Nüsse gehen, deswegen das eine und einzige mal, dass ich variable Variablen benutzt habe.
     
    #15      
x
×
×
teststefan