Ankündigung

Einklappen
Keine Ankündigung bisher.

Verzeichnis auslesen -> Dateinamen in Array

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

  • Verzeichnis auslesen -> Dateinamen in Array

    Wie der Titel schon sagt, möchte ich gerne ein Verzeichnis auslesen und die Dateinamen in einem Array haben. Ich bekomm das aber irgendwie nicht richtig hin. Das Auslesen selber ist kein Problem, allerdigs bekomm ich die Dateinamen nicht in ein Array...
    So lese ich die Dateien aus:

    PHP-Code:
    <?php
    if ($handle opendir('txt')) {
        while (
    false !== ($file readdir($handle))) {
            if (
    $file != "." && $file != "..") {
                
                
    $honey "$file...";
                
    $txts explode("..."$honey);
                echo 
    $txts[1];    
            }
        }
        
    closedir($handle);
    }


    ?>
    Währe toll, wenn mir mal eben einer auf die Sprünge helfen könnte!


  • #2
    Zitat von quoba Beitrag anzeigen
    PHP-Code:
    $honey "$file..."
    damit überschreibst du immer wieder $honey mit dem aktuellen file und "..." im anschluss. Deshalb funktioniert das nicht mit dem explode.
    Folgendermaßen würde es theoretisch funktionieren:
    PHP-Code:
    $honey .= "$file..."
    Einfacher wäre es hiermit:
    PHP-Code:
    $files_array[]=$file
    Damit hängst du an das Ende des Arrays "files_array" jeweils den aktuelle Dateinamen.

    Kommentar


    • #3
      Hi quoba

      Folgendermassen sollte das Ganze funktionieren. Ist allerdings ungetestet:

      PHP-Code:
      <?php
          
      //Das auszulesende Verzeichnis
          
      $dir ".";

          
      //Das Ziel-Array
          
      $file_array = Array();

          
      //Wenn das Verzeichnis existiert...
          
      if(is_dir($dir))    {
              
      //...öffne das Verzeichnis
              
      $handle opendir($dir);
              
      //Wenn das Verzeichnis geöffnet werden konnte...
              
      if(is_resource($handle))    {
                  
      //...lese die enthaltenen Dateien aus,...
                  
      while($file readdir($handle))    {
                      
      //...prüfe ob es Directory-Verweise sind...
                      
      if($file != "." && $file != "..")
                          
      //...und schreibe sie in das Ziel-Array
                          
      array_push($file_array$file);
                  }
              }else{
                  echo 
      "Das &Ouml;ffnen des Verzeichnisses ist fehlgeschlagen";
              }
          }else{
              echo 
      "Das Verzeichnis existiert nicht";
          }
          
      //Zum Schluss wird das Array ausgegeben
          
      print_r($file_array);
      ?>
      Gruss
      De Igäl
      Das Recht auf Dummheit gehört zur Garantie der freien Entfaltung der Persönlichkeit.
      Mark Twain

      Kommentar


      • #4
        mal sehen, danke schön

        Kommentar


        • #5
          sowas in etwa habe ich auch vor, nur möchte ich Name.txt aus einem Ordner auslesen und das hier liest einen Array aus, wie mache ich das?

          Kommentar


          • #6
            Unklare Frage. Willst Du den Inhalt der Datei Name.txt in ein Feld einlesen?

            Kommentar


            • #7
              @quoba
              Den ganzen Code von Igäl:
              PHP-Code:
              $file_array glob('*'); 
              Gruss
              L

              Kommentar


              • #8
                Also ich versuch es mal zu erklären:

                Ich habe ein Script, der dynamisch Textdokumente einfügt (Also immer wenn man auf den Boton Weiter klickt, öffnet er ein anderes Textdokument aus diesem Ordner). Nur ist dieses Zufällig und dies wollte ich dann sortiert ausgeben.

                Kommentar


                • #9
                  Das ist um einiges komplizierter, da du mit jedem Klick die Seite wieder abschickst. Also musst du das im Array mit den Dokumenten entweder das aktuelle Dokument markieren, oder noch besser es gleich löschen. Den Array selber musst du dann entweder in einer Session-Variablen speichern, oder als Input-Feld weitergeben.
                  Gruss
                  L

                  Kommentar


                  • #10
                    PHP-Code:
                    $pt dirname(__FILE__)."\\data";
                    $fn scandir($pt);
                    foreach(
                    $fn as $k => $val){
                      if( 
                    $val != "." && $val != ".." ){
                         echo 
                    $val// Dateiliste 
                         
                    $inhalt    =   file_get_contents("$pt\\$val"); // so kannst du dateien öfnen
                         
                    echo $inhalt;                                         // datei inhalte werden ausgegeben .. 

                       
                    }

                    So hast du alle dateien aufgelistet !

                    Kommentar


                    • #11
                      Zitat von 7Style Beitrag anzeigen
                      So hast du alle dateien aufgelistet !
                      Er will ja nur eins aufs mal
                      Gruss
                      L

                      Kommentar


                      • #12
                        achsoo ! hmmm !

                        möchte er jede datei nacheinander öffnen ? oder was genau möchtet er ?

                        Kommentar

                        Lädt...
                        X