//遍历文件夹,使用缩进形式显示
function dir_recurse(
$dir,
$i=1
){
if(
is_dir(
$dir)){
if(
$handle =
opendir(
$dir)){
while(
false !== (
$file =
readdir(
$handle))){
if(
$file != '.' &&
$file != '..'
){
echo str_pad('',
$i*3,'-') .
$file . '<br/>'
;
if(
is_dir(
$dir . '/' .
$file)){
dir_recurse($dir . '/' .
$file,
$i+1
);
}
}
}
closedir(
$handle);
}
}else{
echo str_pad('',
$i*3,'-') .
$dir . '<br/>'
;
}
}
//遍历文件夹,保存到数组中
function dir_scan(
$dir){
$array =
[];
if(
is_dir(
$dir)){
$array[] =
$dir;
if(
$handle =
opendir(
$dir)){
while(
false !== (
$file =
readdir(
$handle))){
if(
$file != '.' &&
$file != '..'
){
if(
is_dir(
$dir . '/' .
$file)){
$new_arr = dir_scan(
$dir . '/' .
$file);
$array =
array_merge(
$array,
$new_arr);
}else{
$array[] =
$dir . '/' .
$file;
}
}
}
closedir(
$handle);
}
return $array;
}else{
$array[] =
$dir;
return $array;
}
}
dir_recurse('./node_study'
);
$a = dir_scan('./node_study'
);
var_dump(
$a);
转载于:https://www.cnblogs.com/gyfluck/p/9213407.html
相关资源:php如何实现递归遍历文件目录