社区版本可以用
function myscandir($dir)
{
$files = array();
if ( $handle = opendir($dir) ) {
while ( ($file = readdir($handle)) !== false ) {
if ( $file != ".." && $file != "." ) {
if ( isdir($dir . "/" . $file) ) {
$files[$file] = scandir($dir . "/" . $file);
}else {
$files[] = $file;
}
}
}
closedir($handle);
return $files;
}
}
更好的简洁方法
function traverseDirectory($directory) {
$files = scandir($directory);
foreach ($files as $file) {
$path = $directory . '/' . $file;
if (is_dir($path)) {
// 如果是文件夹,则递归调用该函数
traverseDirectory($path);
} else {
// 如果是文件,则打印文件路径
echo $path . "\n";
}
}
}