Revision: 38141
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at December 26, 2010 16:50 by noelj
Initial Code
<?php function dir_recursive($path, $parent = ''){ $files = array(); $d = dir($path); while (false !== ($entry = $d->read())) { if($entry == '.' || $entry == '..') continue; //if this is a directory, loop inside its contents if(is_dir($d->path.'/'.$entry)){ //if parent dir given, then create another array dimension to be used to store files under this parent if(!empty($parent)){ $files[$parent][$entry] = dir_recursive($d->path.'/'.$entry, $entry); }else $files[$entry] = dir_recursive($d->path.'/'.$entry, $entry); }else $files[$entry] = $entry; //reset parent dir given, so it won't create another array dimension for the next loop of subdirectory $parent = ''; } $d->close(); return $files; } //usage $files = dir_recursive('.'); echo '<pre>'; print_r($files); ?>
Initial URL
Initial Description
Initial Title
Scan directory contents recursively
Initial Tags
files
Initial Language
PHP