Avatar billede spidr Nybegynder
19. januar 2005 - 07:45 Der er 4 kommentarer og
2 løsninger

Finde inhold af mapper OG undermapper

Nogen der har et script ligende der går ind og finder alle mapper i en mappe og derefter finde undermapper af disse?
så den printer det ud sådan her:

Mapper:
Mappe1
-undermappe1
Mappe2
Mappe3
-Undermappe31
-Undermappe32
-Undermappe33
--Undermappe 331
Mappe4

Osv..

Håber virkelig nogen kan hjaelpe :)
Avatar billede bromer Nybegynder
19. januar 2005 - 08:00 #1
Sæt $initdir og du burde være kørende...

<?
$initdir = "";

function myreaddir($dirname,$level) {
                if (is_dir($dirname)) {
                  $dh = opendir($dirname);
                  $spacer = "";
                  for ($i = 0;$i < $level; $i++) {
                        $spacer .= "-";
                }
                  while(($file = readdir($dh)) !== false) {
                          if ($file != '.' && $file != '..' && is_dir($dirname . "/" .$file)) {
                                  print $spacer . $file . "\n";
                                  myreaddir($dirname . "/" . $file,$level+1);
                          }
                  }
        }
}
myreaddir($initdir,0);
?>
Avatar billede snorres Nybegynder
19. januar 2005 - 08:06 #2
Tusind tak, det var LIGE hvad jeg ledte efter :)
Får jeg et svar :)?
Avatar billede snorres Nybegynder
19. januar 2005 - 08:06 #3
Eller lige en ting til,
kan man evt. sette scriptet til at ignorere mapper med navnet small?
Avatar billede spidr Nybegynder
19. januar 2005 - 08:09 #4
Nej ik igen,
var min lille brors der står på autologin :S
Avatar billede bromer Nybegynder
19. januar 2005 - 08:19 #5
Det andet var faktisk et svar. Du kan ignorere mapperne "small" og "anden" ved

<?
$initdir = "";
$ignore = array("small","anden");

function myreaddir($dirname,$level,$ignore) {
                if (is_dir($dirname)) {
                  $dh = opendir($dirname);
                  $spacer = "";
                  for ($i = 0;$i < $level; $i++) {
                        $spacer .= "-";
                }
                  while(($file = readdir($dh)) !== false) {
                          if (!in_array($file,$ignore) && $file != '.' && $file != '..' && is_dir($dirname . "/" .$file)) {
                                  print $spacer . $file . "\n";
                                  myreaddir($dirname . "/" . $file,$level+1,$ignore);
                          }
                  }
        }
}
myreaddir($initdir,0,$ignore);
?>
Avatar billede spidr Nybegynder
19. januar 2005 - 10:21 #6
Super laekkert, mange tak :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester