Ankündigung

Einklappen
Keine Ankündigung bisher.

ordner auslesen

Einklappen

Neue Werbung 2019

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

  • ordner auslesen

    Ich habe folgendes Script:



    PHP-Code:
    <?php

    $anzahl
    =0;
    $handle=opendir("./include/gallery");
    while (
    $file readdir($handle))  {
            if ((
    substr(strtolower($file), -3)=="jpg") or (substr(strtolower($file), -3)=="gif") or (substr(strtolower($file), -4)=="jpeg"))       
            {         
                
    $anzahl++;
            }     
    }
    echo 
    "$anzahl Dateien";




    ?>
    Soweit funtioniert auch alles, es liest alle Datein aus dem ordner aus, nur wie kann ich alle dateien aus dem Ordner +Unterordnern auslesen?

    danke im voraus

  • #2
    Guckst du: http://www.phptt.de/showschnipsel.php?kat=15&id=22

    Gruß
    phpfan

    Kommentar


    • #3
      danke erstmal für die Antwort, aber ich wollte nur die Dateien in einem Ordner+Unterordner auslesen also zählen lassen ohne die Dateien aufzählen zu lassen.

      Kommentar


      • #4
        Ja, nee, is' klar. Und da kann man das Script nicht als Vorlage nehmen und anpassen?

        Gruß
        phpfan

        Kommentar


        • #5
          wenn ich es könnte hätte ich das ja gemacht...

          Kommentar


          • #6
            Zitat von antiheld2003
            wenn ich es könnte hätte ich das ja gemacht...
            Dann lerne es!!!
            PHP-Code:
            <? 
               function read_recursiv($path) 
               { 
                  $result = array(); 

                  $handle = opendir($path); 

                  if ($handle) 
                  { 
                     while (false !== ($file = readdir($handle))) 
                     { 
                         if ($file != "." && $file != "..") 
                         { 
                            $name = $path . "/" . $file; 
                            if (is_dir($name)) 
                            { 
                               $ar = read_recursiv($name); 
                               foreach ($ar as $value) 
                               { 
                                  $result[] = $value; 
                               } 
                            } 
                            else 
                            { 
                               $result[] = $name; 
                            } 
                         } 
                     } 
                  } 
                  closedir($handle); 
                  return $result; 
               } 

               $data = read_recursiv("."); 

               echo "[b]" . count($data) . "Dateien gefunden[/b]
            \n"; 
               foreach($data as $value) 
                 echo "$value
            \n"; 
            ?>
            Wer jetzt nicht völlig blind ist, nimmt einfach die foreach-Schleife am Ende raus. Manchmal man kann hier wirklich nur mit dem Kopf schütteln!

            Und wenn man sich auf das reine Zählen beschränken will, wäre das der Umbau:
            PHP-Code:
            <? 
               function count_recursiv($path) 
               { 
                  $result = 0; 

                  $handle = opendir($path); 

                  if ($handle) 
                  { 
                     while (false !== ($file = readdir($handle))) 
                     { 
                         if ($file != "." && $file != "..") 
                         { 
                            $name = $path . "/" . $file; 
                            if (is_dir($name)) 
                            { 
                               $result += count_recursiv($name); 
                            } 
                            else 
                            { 
                               $result++; 
                            } 
                         } 
                     } 
                  } 
                  closedir($handle); 
                  return $result; 
               } 

               $count = count_recursiv("."); 

               echo "[b]$count Dateien gefunden[/b]\n"; 
            ?>
            Gruß
            phpfan

            Kommentar


            • #7
              danke danke :P

              Kommentar

              Lädt...
              X