Ankündigung

Einklappen
Keine Ankündigung bisher.

Array-Variablenname dynamischer Zugriff

Einklappen

Neue Werbung 2019

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

  • Array-Variablenname dynamischer Zugriff

    Hallo,

    ich habe folgendes Problem, was für Euch vermutlich kein Problem darstellt...

    Ich möchte den Namen einer Variablen dynamisch erzeugen..

    for($x = 1; $x < 11; $x ++){
    $var = '$frage'.$x
    echo $$var[$x];
    }

    oder

    for($x = 1; $x < 11; $x ++){
    $var = '$frage'.$x.'['.$x'];
    echo $$var;
    }

    Aber $$var ist in allen Fällen leer. Wenn ich
    echo $frage1[1];
    ist es aber nicht leer...

    Bitte helft mir...

    Schön Grüße
    yussuf-ff

    P.S.: Ich weiss das Arrays mit dem Index 0 beginnen, für das Prolem aber irrelevant...

  • #2
    $var = '$frage'.$x
    Lass das $ Zeichen weg.

    Abgesehen davon ist diese Technik (grade wenn du schon Arrays verwendest) schlechter Stil...

    Kommentar


    • #3
      Hallo,

      das $ Zeichen ist klar, mein Fehler aber ich möchte viele Arrays durchgehen...

      Und was nicht klappt ist

      echo $$var[$x]; Ergebnis: leer

      echo $$var; Ergebnis: Array

      echo $frage1[0]; Ergebnis: nicht leer

      Schöne Grüße
      yussuf-ff

      Kommentar


      • #4
        So gehts:

        PHP-Code:
        <?php
        $frage1
        [1] = 'test'// Als Beispiel

        for($x 1$x 11$x ++){ 
        $var 'frage'.$x;
        echo ${
        $var}[$x]; 



        ?>
        Ausgabe ist 'test'.
        Aber warum nicht gleich komplett mit Arrays arbeiten?
        $frage[1][1];
        $frage[1][2];
        usw...?

        edit: Was mir gerade auffällt: Das Script könntest du doch einfach mit einem eindimensionalen Array ersetzen.

        $frage[1] = 'test';

        for($x = 1; $x < 11; $x ++){
        echo $frage[$x];
        }

        kommt doch auf das selbe raus.

        Kommentar


        • #5
          Hallo,

          vielen Dank, das ist genau das was ich gesucht habe...

          Schöne Grüße
          yussuf-ff

          Kommentar


          • #6
            Hallo,

            ich fülle erst in einem anderen Script 20 Arrays und will diese dann eins nach dem anderen durchgehen. Das wurde in dem Code-Beispiel natürlich nicht ganz klar....

            Schöne Grüße
            yussuf-ff

            Kommentar


            • #7
              Zitat von yussuf-ff
              ich fülle erst in einem anderen Script 20 Arrays und will diese dann eins nach dem anderen durchgehen.
              Dafür gibt es mehrdimensionale Arrays...

              PHP-Code:
              <?php
              $arr 
              = array();
              $arr[0] = array(1,2,3); // Array 1
              $arr[1] = array(4,5,6); // Array 2 ...
              ?>
              Viel eleganter.

              Kommentar

              Lädt...
              X