<?php function getFiles( & $rdi, $depth = 0) { $txt = ''; return; for ($rdi->rewind();$rdi->valid();$rdi->next()) { if ($rdi->isDot()) continue; if ($rdi->isDir() || $rdi->isFile()) { for ($i = 0; $i<=$depth;++$i) if ( $rdi->isDir() ) { } elseif ( $rdi->isFile() ) { echo '<a href="' . $_SERVER['PHP_SELF'] . '?action=' . $rdi->key() . '">' . $rdi->current().'</a><br />'; } if ($rdi->hasChildren()) getFiles($rdi->getChildren(),1+$depth); } } } getFiles(new RecursiveDirectoryIterator('code/')); ?>
Chcialem troche ja zmienic, abym mogl jej uzywac razem z szablonami:
<?php function getFiles( & $rdi, $depth = 0) { $txt = ''; return; for ($rdi->rewind();$rdi->valid();$rdi->next()) { if ($rdi->isDot()) continue; if ($rdi->isDir() || $rdi->isFile()) { for ($i = 0; $i<=$depth;++$i) $txt .= ' '; if ( $rdi->isDir() ) { $txt .= '<b>' . $rdi->current().'</b><br />'; } elseif ( $rdi->isFile() ) { $txt .= '<a href="' . $_SERVER['PHP_SELF'] . '?action=' . $rdi->key() . '">' . $rdi->current().'</a><br />'; } if ($rdi->hasChildren()) getFiles($rdi->getChildren(),1+$depth); } } return $txt; } $pic = getFiles(new RecursiveDirectoryIterator('code/')); ?>
Niestety nie jest zwracane przez nia to samo co pierwsza wersja. Czemu ? :|