热搜词
发表于 2022-9-2 18:40:15 | 显示全部楼层 |阅读模式
php 获取所有子目录名,php 获取指定目录下的所有文件名和路径(包括子目录)

获取指定目录下的所有文件名和路径,同时也包括子目录在内的所有文件

/**

* 获取指定目录下的文件列表

*string $path 指定的目录,默认为当前目录

*string $exten 文件扩展名带前面的点(.txt),默认显示全部文件

*string $ifchild 是否显示子目录文件列表,默认不显示

*/

function openpath($path=".", $exten = '*' ,$ifchild = false){

$array = array();

static $file_array=array(); //存放文件名数组

static $path_array=array(); //存放路径数组(不包括文件名)

$path = preg_replace('/(.*)([^\/])$/', '$1$2/', $path);

if(is_dir($path)){ //检查文件目录是否存在

$H = @ opendir($path);

while(false !== ($_file=readdir($H))){

//检索目录

if(is_dir($path.$_file) && $_file != "." && $_file!=".." && $_file!=="Thumbs.db"){

if($ifchild){

openpath($path.$_file, $exten ,$ifchild);

}

//检索文件

}elseif(is_file($path.$_file) && $_file!="." && $_file!=".." && $_file!=="Thumbs.db"){

//$_file = auto_charset($_file,'utf-8','gbk');

if($exten == '*'){

array_push($file_array, $_file);

array_push($path_array, $path);

} else {

if(preg_match('/(.*)'.$exten.'/', '/'.$_file.'/')){

array_push($file_array, $_file);

array_push($path_array, $path);

}

}

}

}

closedir($H);

}

$array['name'] = $file_array;

$array['path'] = $path_array;

return $array;

}

全部评论0
回复
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|手机版|小黑屋|管理员之家 ( 苏ICP备2023053177号-2 )

GMT+8, 2024-12-27 18:49 , Processed in 0.175511 second(s), 22 queries .

Powered by Discuz! X3.5

Cpoyright © 2001-2024 Discuz! Team