Pfad zu einem Array generieren?

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

  • Pfad zu einem Array generieren?

    Hallo ich hab einen array mit mehreren Dimensionen, die Anzahl ist immerunterschiedlich manchmal können es 3 sein und manchmal 30 und ich will jetzt in der 15. oder einer anderen Dimension was ausgeben z.b.
    Code:
    echo $array[2][5][7][3][3];
    aber leider ist das immerunterschiedlich also wie kann ich den pfad generieren?


    alsi anders gesagt wie könnte ich [2][5][7][3][3] an $array hängen??
    Zuletzt geändert von lord_fritte; 27.12.2004, 21:50.

  • #2
    würde einiges mit Schleifen, is_array und count rumprobieren... Also z.B.:
    (keine wirkliche PHP-Syntax)
    PHP-Code:
    if (is_array) {
    -
    count (array)
    -
    jedes Element prüfen mit is_array
    }
    else .... 
    Ausgabe des Wertes... 
    Sind jetzt nur ein paar Anregungen...
    Habe aber auch keine fertige Lösung bzw. Ansätze für sowas gefunden...

    Kommentar


    • #3
      such mal nach "rekursion" oder "rekursiv"
      Kissolino.com

      Kommentar


      • #4
        Oder ich hab umgedacht, ich hab jetzt 2 Arrays der 1. wo ich die key anhängen will, und der 2. wo die keys drinstehen. Und diese möchte ich auslesen zu einem String zusammen führen und an echo $array hängen

        Kommentar


        • #5
          Original geschrieben von lord_fritte
          Oder ich hab umgedacht, ich hab jetzt 2 Arrays der 1. wo ich die key anhängen will, und der 2. wo die keys drinstehen. Und diese möchte ich auslesen zu einem String zusammen führen und an echo $array hängen
          Kissolino.com

          Kommentar


          • #6
            ok dann so wie mache ich hier was nutzbares draus
            $key = "[2][5][7][3][3]";
            echo $array.$key;

            Kommentar


            • #7
              Das hört sich ja noch komplexer an. Der beste Tipp war von Wurzel:
              "rekursion" oder "rekursiv"

              Kommentar


              • #8
                Vielleicht hilft das ja, aber keine Ahnung.

                PHP-Code:
                <?php

                while(isset($array[$i]))


                //Zwei einfache indizierte Arrays erzeugen
                $sortiment=array("Tisch","Schrank","Bett","Nachttisch",
                "Hocker","Stuhl");
                $zahlen=array(1,5,884,34,6,12,77,93,21);

                //Alle Arrayeinträge nacheinander ausgeben
                echo "<b>Array unsortiert</b><br>";
                echo 
                "<b>Sortiment: </b>";
                $i=0;
                while(isset(
                $sortiment[$i])){
                echo 
                $sortiment[$i] . " ";
                $i++;
                }
                echo 
                "<br><b>Zahlen: </b>";
                $i=0;
                while(isset(
                $zahlen[$i])){
                echo 
                $zahlen[$i] . " ";
                $i++;
                }

                echo 
                "<br><br>";
                //Arrayeintrag an den Positionen 2 und 4 zurückgeben
                echo "<b>Arrayeintrag 2 (Sortiment):</b> " $sortiment[2] . "<br>";
                echo 
                "<b>Arrayeintrag 4 (Zahlen): </b>" $zahlen[4] . "<br>";
                echo 
                "<br>";

                //Anzahl der Elemente der Arrays ermitteln und zurückgeben
                echo "<b>Anzahl der Arrayeinträge: </b><br>";
                echo 
                "<b>Sortiment: </b>" count($sortiment) . "<br>";
                echo 
                "<b>Zahlen: </b>" count($zahlen) . "<br>";
                echo 
                "<br>";

                //Arrays aufsteigend sortieren und dann ausgeben
                sort($sortiment);
                sort($zahlen);
                echo 
                "<b>Array aufsteigend sortiert</b><br>";
                echo 
                "<b>Sortiment: </b>";
                $i=0;
                while(isset(
                $sortiment[$i])){
                echo 
                $sortiment[$i] . " ";
                $i++;
                }
                echo 
                "<br><b>Zahlen: </b>";
                $i=0;
                while(isset(
                $zahlen[$i])){
                echo 
                $zahlen[$i] . " ";
                $i++;
                }
                echo 
                "<br><br>";

                //Arrays absteigend sortieren und dann ausgeben
                rsort($sortiment);
                rsort($zahlen);
                echo 
                "<b>Array absteigend sortiert</b><br>";
                echo 
                "<b>Sortiment: </b>";
                $i=0;
                while(isset(
                $sortiment[$i])){
                echo 
                $sortiment[$i] . " ";
                $i++;
                }
                echo 
                "<br><b>Zahlen: </b>";
                $i=0;
                while(isset(
                $zahlen[$i])){
                echo 
                $zahlen[$i] . " ";

                $i++;
                }
                echo 
                "<br><br>";

                //Maximum und Minimum des Array zahlen ermitteln
                echo "<b>Maximum Sortiment: </b>" max($sortiment) . "<br>";
                echo 
                "<b>Minimum Sortiment: </b>" min($sortiment) . "<br><br>";

                echo 
                "<b>Maximum Zahlen: </b>" max($zahlen) . "<br>";
                echo 
                "<b>Minimum Zahlen: </b>" min($zahlen);
                ?>

                Kommentar


                • #9
                  @lord_fritte
                  wenn es um das hier geht: http://www.php-resource.de/forum/sho...threadid=48602 solltest du dir zunächst mal klar machen, wie du bestimmte inhalte über "assoziative" arrays abbilden kannst ... eine unbestimmte tiefe ist dann uU unnötig
                  Kissolino.com

                  Kommentar


                  • #10
                    ich möchte dioch nur einen key mit einem array verbinden
                    aber wieso geht das hier nicht:
                    PHP-Code:
                    $array = array("hmm",array("jaa",array("nöö")));
                    $key   = array("0");

                    function 
                    add_key($array,$key)
                    {
                        
                    $new_key '$array$key';
                        eval(
                    "\$new_key = \"$new_key\";");
                        return 
                    $new_key;
                    }

                    $new_array add_key($array,"[".$key[0]."]");

                    echo 
                    $new_array
                    die ausgabe sieht so aus:
                    Code:
                    Array[0]

                    Kommentar


                    • #11
                      weil man mit echo strings ausgeben kann, während die arrays nur mit print_r sichtbar werden.

                      Kommentar


                      • #12
                        ach das geht nicht ich hab kein bock mehr auf denn mist
                        Zuletzt geändert von lord_fritte; 28.12.2004, 09:38.

                        Kommentar


                        • #13
                          PHP-Code:
                          //suchst du sowas

                          echo $mein_array['mein_key']; 
                          mfg
                          marc75

                          <Platz für anderes>

                          Kommentar


                          • #14
                            nein der key soll aus einer anderen variabel kommen also:
                            $key = "[key]";
                            echo $array.$key;

                            Kommentar


                            • #15
                              Original geschrieben von lord_fritte
                              nein der key soll aus einer anderen variabel kommen also:
                              $key = "[key]";
                              echo $array.$key;

                              und Funktioniert es?








                              PHP-Code:
                              echo $array[$key]; 


                              http://www.php.net/manual/de/language.types.array.php
                              mfg
                              marc75

                              <Platz für anderes>

                              Kommentar

                              Lädt...
                              X