Variablen-Namen aus anderen Variablen zusammensetzen?

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

  • Variablen-Namen aus anderen Variablen zusammensetzen?

    hallo,

    ist es möglich variablen namen zusammenzusetzen, also z.B.
    man hat die Variable $id und möchte überprüfen ob es die Variable $test_$id gibt.
    Also falls $id = 4 soll die entstehende Variable $test_4 heißen.

    Ist das möglich, falls ja wäre eine Erklärung nett ..

    thx

  • #2
    Siehe variable Variablen:
    http://www.php-resource.de/forum/sho...?threadid=7457

    PHP-Code:
    <?
    $id ="test_";  
    $id .= 4;
    print "Inhalt von id:$id<br>"; // test_4 ist der Inhalt

    ${$id} = "grammale";
    print "${$id} oder $test_4 ist beides dasselbe";  
    ?>

    Kommentar


    • #3
      PHP-Code:
      <?
      $a=3;
      $b="ab";
      $c=$a."cde".$b;
      echo $c;
      ?>

      Kommentar


      • #4
        also so ganz hab ichs noch nicht:

        ich möchte mit einem Script zugangsrechte verteilen, zu bestimmte Kategorien etc. von denen ich aber nicht weiß wie die heißen, weil die an anderer Stelle in die Datenbank geschrieben werden.

        Es gibt jetzt also eine Übersicht in der Mann für jeden User Häckchen setzen kann, ob er schreib oder leserechte hat. Die namen der checkboxes sind immer write_$cat_id also dann z.B. wenn der User dann schreibrechte für eine Kategorie mit der ID 4 hat und für eine Kategorie mit der ID 6, werden die Variaben write_4 und write_6 weitergegeben. Diese Variablen sollen dann später per Komma getrennt in eine DB gespeichert werden.
        Wie kann ich jetzt überprfen ob es eine Var namens write_4 bzw. write_6 gibt, so dass der Aufwand dabei ziemlich gering ist, also es soll möglichst schnell gehen.
        Ich dachte da zunächst ich lese aus der anderen Datenbank Tabelle die Kategorien aus und frage dann die vars write_$catid ab, aber genau da hakt es, weil eine zusammengesetzte Variable irgendwie nicht die Werte der nicht zusammengesetzten Variable animmt...
        Was kann ich da machen, außer tausend mal zu schreiben if($write_1 ... if($write_1000) {... ?

        danke!

        Kommentar


        • #5
          Hallo. Wie auch oben anders umschrieben:
          Schau im deutschen php-Handbuch mal unter variable Variablen nach (ctrl+f), dort stehts, wies funktioniert. 10min konzentriertes starren auf die Erklärungen und man sollte es begriffen haben.

          Weiter fällt mir auf, deine Variablen-Schreibweise oben: $abc_$cde
          Ist das überhaupt erlaubt, mehrere $-Zeichen in einer Variable?
          mfg

          Kommentar


          • #6
            natürlich gibt es die schreibweise nicht, ich wollte ja nur sagen, was ich erreichen will.

            Problem ist, dass ich an ein Script Variablen weitergebe von denen der Name variieren kann und dummerweise ist
            $var = test;
            $($var) != $test

            also auf jeden Fall akzeptiert er es nicht so richtig

            Eigentlich ist das ganz einfach ich muss nur von jede variable von $var_1 bis $var_1000 (falls es tausend Einträge in der DB gibt) auf Ihre Gültigkeit überprüfen und da dachte ich, dass das doch bestimmt einfacher geht als das ich tig tausend mal die Abfrage in die Datei schreibe...

            Kommentar


            • #7
              $var = test;
              $$var == $test

              Kommentar

              Lädt...
              X