Avatar billede Slettet bruger
27. januar 2011 - 22:15 Der er 1 kommentar og
1 løsning

Vise mapper og undermapper (men ikke filer)

Hej,

Jeg leder efter et lidt kode der lister alle mapper og undermapper i en given destination ala:

mappe1
mappe2
mappe2/mappe2.1
mappe2/mappe2.2
mappe2/mappe2.2/mappe2.2.1
mappe3
osv.

Den skal altså IKKE liste filer - kun mapperne - til gengæld skal undermapperne vises som angivet ovenfor... Nogen der kan klare den?

Jeg har haft kig på nedenstående, men kan ikke helt greje at få den vinklet i fht. ovenstående - den lister ellers undermapperne fint:

filesInDir('../../minmappe');
function filesInDir($tdir)
{
        $dirs = scandir($tdir);
        foreach($dirs as $file)
        {
                if (($file == '.')||($file == '..'))
                {
                }
                elseif (is_dir($tdir.'/'.$file))
                {
                        filesInDir($tdir.'/'.$file);
                }
                else
                {
                        echo $tdir.'/'.$file."<br>";
                }
        }
}
Avatar billede tjens Nybegynder
27. januar 2011 - 23:21 #1
Udskriv på '.' da det jo netop er roden, og fordi den kommer før andre foldernavne:

$startdir = '../../minmappe';
$substart = strlen($startdir);
filesInDir($startdir);

function filesInDir($tdir)
{
        global $substart;
        $dirs = scandir($tdir);
        foreach($dirs as $file)
        {           
                if (($file == '.'))
                {
                    echo substr($tdir,$substart)."<br>";
                    continue;
                }
               
                if ($file == '..')
                {
                    continue;
                }
               
                if (is_dir($tdir.'/'.$file))
                {
                    filesInDir($tdir.'/'.$file);
                }
        }
}
Avatar billede Slettet bruger
28. januar 2011 - 08:40 #2
Sweet, jeg takker! :-)
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