probleme mit array

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

  • probleme mit array

    ich habe nen sckript das alle ortner in eine array schreiben soll.
    PHP-Code:
    function show_all_files($ordner$links 0$sub FALSE) {
    $ida $_GET['id'];
     
    $handle opendir($ordner);
      while (
    $file readdir ($handle)) {
        if(
    $file != "." && $file != "..") {
          if(
    is_dir($ordner."/".$file)) {
          
    show_all_files($ordner."/".$file$links+30TRUE);
          
    $test[] = "$ordner/$file";
          }
         }
      }
    sort($test);
    reset($test); 
    echo 
    "<pre>";
    print_r($test);
    echo 
    "</pre>";
      
    closedir($handle);
      } 
    es gibt aus:

    Array
    (
    [0] => /...de/hoyer/banner
    [1] => /...de/hoyer/config
    )

    Array
    (
    [0] => /...de/Bewerbung
    [1] => /...de/Download
    [2] => /...de/Kontakt
    .
    .
    [9] => /...de/hoyer
    .
    .

    es wir ja immer wieder die function show_all_files() auf gerufen wird jedes mal ne neue array test[] erstelt? oder wie muss ich die ausgabe deuten?

  • #2
    ja es wird immer überschrieben...
    Beantworte nie Threads mit mehr als 15 followups...
    Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

    Kommentar


    • #3
      globalisiere das array $test oder übergib es als verweis...
      denn $test wird in der Funktion immer neu erstellt iniziiert
      Beantworte nie Threads mit mehr als 15 followups...
      Real programmers confuse Halloween and Christmas because OCT 31 = DEC 25

      Kommentar


      • #4
        Original geschrieben von MelloPie
        globalisiere das array $test oder übergib es als verweis...
        ne blöde fage wie mache ich das??
        einfach
        PHP-Code:
        global $test[] = "$ordner/$file"
        Zuletzt geändert von abanta; 21.11.2004, 20:25.

        Kommentar


        • #5
          global $test;


          oder halt als Parameter übergeben, also so wie $ordner usw...

          Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
          var_dump(), print_r(), debug_backtrace und echo.
          Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
          Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
          Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

          Kommentar


          • #6
            indem du erst bei google eingibst:
            "global sitehp.net"
            oder
            "reference sitehp.net"

            Kommentar


            • #7
              global $test;

              fürt zu erheblichen performenz verlust gibts noch ne andere möglichkeit?

              Kommentar


              • #8
                Original geschrieben von penizillin
                indem du erst bei google eingibst:
                "reference sitehp.net"

                Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                Wie man Fragen richtig stellt

                Kommentar


                • #9
                  2. Möglichkeit
                  Original geschrieben von Shurakai
                  oder halt als Parameter übergeben, also so wie $ordner usw...
                  und dann irgendwann zurückgeben...aber ich würd das schon mit Referenz machen....sollte leichter sein und besser funktionieren!

                  Ein netter Guide zum übersichtlichen Schreiben von PHP/MySQL-Code!

                  bei Klammersetzung bevorzuge ich jedoch die JavaCoding-Standards
                  Wie man Fragen richtig stellt

                  Kommentar


                  • #10
                    Original geschrieben von abanta
                    global $test;

                    fürt zu erheblichen performenz verlust gibts noch ne andere möglichkeit?
                    Naja also ob das so erheblich ist...?
                    Für alle die Fehler suchen, gibts gratis tolle Debuggingmöglichkeiten:
                    var_dump(), print_r(), debug_backtrace und echo.
                    Außerdem gibt es für unsere Neueinsteiger ein hervorragendes PHP Tutorial zu PHP 4 und PHP 5 (OOP)
                    Es heißt $array['index'] und nicht $array[index]! Und nein, das ist nicht egal!
                    Dieses Thema lesen, um Ärger im Forum und verzögerte Hilfen zu vermeiden.

                    Kommentar


                    • #11
                      es GEHT danke!!!

                      aber eine frage habe ich doch noch:

                      aus irgent einem grund wir test[] öffter ausgeben bestimmt 8 - 10 mal)

                      warum tu es das??

                      Kommentar


                      • #12
                        erst schaust du, wo du die ausgabe definierst, dann überlegst du, wie oft die funktion aufgerufen wir (und mit ihr die ausgabe). dann sagst du uns bescheid, was rauskam, ok?

                        Kommentar

                        Lädt...
                        X