Directory-Reader

September 2009

Mit diesem Skript kann man ein Verzeichnis inklusive dessen Unterverzeichnisse rekursiv auslesen und ausgeben. Hierbei wird auf opendir() & Co verzichtet. Stattdessen benutzen wir glob().
Bei der Anwendung werden zuerst die Unterverzeichnisse ausgelesen, anschliessend werden die Dateien natürlich sortiert ausgegeben.

<?php
glob_h2
('*'); // Funktion aufrufen

function glob_h2($rdir){
  
$this_dir glob($rdir) or array();
  
natcasesort($this_dir); // Dateien sortieren
  
foreach($this_dir as $fname){ // Verzeichnis
    
if(!is_dir($fname)) continue;
    echo 
substr(strrchr('/'.$fname,'/'), 1).'/';
    echo 
'<div style="padding-left:10px;">';
    
glob_h2($fname.'/*'); // Unterverzeichnis auslesen
    
echo '</div>';
  }
  foreach(
$this_dir as $fname){ // Datei
    
if(is_dir($fname)) continue;
    echo 
'<a href="'.$fname.'">'.substr(strrchr('/'.$fname'/'), 1).'</a><br />';
  }
}
?>

Beispielhafte Ausgabe im Browser, wobei die jeweilige Datei verlinkt ist:
web/
  template/
    header.php
    footer.php
  scripts/
    converter.php
    debugger.php
    parser.php
  functions.php
  index.php
  config.inc.php
redirect.html

Siehe auch:
 
PHP


Andere Einträge