Se vuoi un array che mantenga il formato del tree di directory:
Codice PHP:
function read_dir_tree($folder) {
$output = array();
foreach ( scandir($folder) as $item ) {
if ( $item == '.' OR $item == '..' )
continue;
$full_path = "$folder/$item";
if ( is_dir($full_path) ) {
$output[$item] = read_dir_tree($full_path);
} else {
$output[] = $full_path;
}
}
return $output;
}
se invece vuoi la semplice lista "piatta" di tutti i file:
Codice PHP:
function read_dir_plain($folder) {
$output = array();
foreach ( scandir($folder) as $item ) {
if ( $item == '.' OR $item == '..' )
continue;
$full_path = "$folder/$item";
if ( is_dir($full_path) ) {
$output = array_merge($output, read_dir_plain($full_path));
} else {
$output[] = $full_path;
}
}
return $output;
}