技术笔记
当前位置:首页 > 商学院 > 技术笔记 > 正文内容

技术笔记

php获取目录下文件夹列表(递归)

豫唐网络2023-03-06 08:161061

获取目录下所有子目录的文件夹列表(递归函数返回的是路径的全称)

应用案例

$url="D:/wwwroot/ytecn.com/ui/";
$list=RemoveMoreSpaces($url);
print_r($list);

输出结果为:

Array ( [0] => D:/wwwroot/ytecn.com/ui/code/list [1] => D:/wwwroot/ytecn.com/ui/code [2] => D:/wwwroot/ytecn.com/ui/css [3] => D:/wwwroot/ytecn.com/ui/img [4] => D:/wwwroot/ytecn.com/ui/js [5] => D:/wwwroot/ytecn.com/ui/tinymce/langs [6] => D:/wwwroot/ytecn.com/ui/tinymce/skins [7] => D:/wwwroot/ytecn.com/ui/tinymce )

函数

functionGetDirsInDir_Recursive($dir)
{
$dirs=array();

if(!file_exists($dir)){
returnarray();
}
if(!is_dir($dir)){
returnarray();
}
$dir=str_replace('\\','/',$dir);
if(substr($dir,-1)!=='/'){
$dir.='/';
}

if(function_exists('scandir')){
foreach(scandir($dir,0)as$d){
if(is_dir($dir.$d)){
if(($d!='.')&&($d!='..')){
$array=GetDirsInDir($dir.$d);
if(count($array)>0){
foreach($arrayas$key=>$value){
$dirs[]=$dir.$d.'/'.$value;
}
}
$dirs[]=$dir.$d;
}
}
}
}else{
$handle=opendir($dir);
if($handle){
while(false!==($file=readdir($handle))){
if($file!="."&&$file!=".."){
if(is_dir($dir.$file)){
$array=GetDirsInDir($dir.$file);
if(count($array)>0){
foreach($arrayas$key=>$value){
$dirs[]=$dir.$file.'/'.$value;
}
}
$dirs[]=$dir.$file;
}
}
}
closedir($handle);
}
}

return$dirs;
}


扫描二维码推送至手机访问。

版权声明:本文由汤阴县豫唐网络科技有限公司发布,如需转载请注明出处。

本文链接:https://www.ytecn.com/post/561.html

分享给朋友:

相关文章

php将编码转换为UTF8

php将编码转换为UTF8

主要用于编码不统一导致出现乱码的情况,此函数会自动监测非UTF8编码转成UTF8编码。functionConverCode($str){ $encode=mb_detect_encoding($st...

php获取网站在服务器中用的环境

php获取网站在服务器中用的环境

判断当前网站在服务器用的什么环境functionGetWebServer() { if(!isset($_SERVER['SERVER_SOFTWARE'])){ returnS...

php远程提交post函数

php远程提交post函数

远程提交方式:post范围:所有php类型程序函数代码functionpost($params,$url){ $ch=curl_init(); curl_setopt($ch,CURLOPT_UR...

php分割string并取某项数据

php分割string并取某项数据

对string进行分割,并取某项数据。应用案例$txt="姓名|电话|手机号|豫唐"; $name=SplitAndGet($txt,"|",3); ech...

php获取当前目录下文件夹列表

php获取当前目录下文件夹列表

获取当前目录下文件夹的名称应用案例$url="D:/wwwroot/ytecn.com/ui/"; $list=GetDirsInDir($url); print_r($lis...