Definition:
function list_files( $folder = '', $levels = 100 ) {}
Returns a listing of all files in the specified folder and all subdirectories up to 100 levels deep.
The depth of the recursiveness can be controlled by the $levels param.
Parameters
- string $folder: Full path to folder
- int $levels: (optional) Levels of folders to follow, Default: 100 (PHP Loop limit).
Return values
returns:False on failure, Else array of files
Source code
function list_files( $folder = '', $levels = 100 ) {
if ( empty($folder) )
return false;
if ( ! $levels )
return false;
$files = array();
if ( $dir = @opendir( $folder ) ) {
while (($file = readdir( $dir ) ) !== false ) {
if ( in_array($file, array('.', '..') ) )
continue;
if ( is_dir( $folder . '/' . $file ) ) {
$files2 = list_files( $folder . '/' . $file, $levels - 1);
if ( $files2 )
$files = array_merge($files, $files2 );
else
$files[] = $folder . '/' . $file . '/';
} else {
$files[] = $folder . '/' . $file;
}
}
}
@closedir( $dir );
return $files;
}
2271

February 12, 2011 


No comments yet... Be the first to leave a reply!