Hide options

A function to scan directories recursively

Result will be saved to an array with informations like level, path, name and file informations
<?php   
    
   // Directory scanner
   function recur_dir($dir) { 
       $dirlist = opendir($dir); 
       while ($file = readdir ($dirlist)) { 
           if ($file != '.' && $file != '..') { 
               $newpath = $dir.'/'.$file; 
               $level = explode('/',$newpath); 
               if (is_dir($newpath)) { 
                   $mod_array[] = array( 
                           'level'=>count($level)-1, 
                           'path'=>$newpath, 
                           'name'=>end($level), 
                           'kind'=>'dir', 
                           'mod_time'=>filemtime($newpath), 
                           'content'=>recur_dir($newpath)); 
               }
               else{ 
                   $mod_array[] = array( 
                           'level'=>count($level)-1, 
                           'path'=>$newpath, 
                           'name'=>end($level), 
                           'kind'=>'file', 
                           'mod_time'=>filemtime($newpath), 
                           'size'=>filesize($newpath)); 
              } 
           } 
       } 
       closedir($dirlist); 
       return $mod_array; 
   } 
    
   echo '<pre>'; 
   print_r(recur_dir('.')); 
   echo '</pre>'; 
?>



Top