php获取目录下文件夹列表(递归)
时间:2023年09月18日
/来源:网络
/编辑:佚名
获取目录下所有子目录的文件夹列表(递归函数返回的是路径的全称)
应用案例
点击复制代码 PHP
$url="D:/wwwroot/78moban.com/ui/";
$list=RemoveMoreSpaces($url);
print_r($list);
输出结果为:
Array ( [0] => D:/wwwroot/78moban.com/ui/code/list [1] => D:/wwwroot/78moban.com/ui/code [2] => D:/wwwroot/78moban.com/ui/css [3] => D:/wwwroot/78moban.com/ui/img [4] => D:/wwwroot/78moban.com/ui/js [5] => D:/wwwroot/78moban.com/ui/tinymce/langs [6] => D:/wwwroot/78moban.com/ui/tinymce/skins [7] => D:/wwwroot/78moban.com/ui/tinymce )
函数
点击复制代码 PHP
function GetDirsInDir_Recursive($dir)
{
$dirs = array();
if (!file_exists($dir)) {
return array();
}
if (!is_dir($dir)) {
return array();
}
$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 ($array as $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 ($array as $key => $value) {
$dirs[] = $dir . $file . '/' . $value;
}
}
$dirs[] = $dir . $file;
}
}
}
closedir($handle);
}
}
return $dirs;
}
应用案例
点击复制代码 PHP
$url="D:/wwwroot/78moban.com/ui/";
$list=RemoveMoreSpaces($url);
print_r($list);
输出结果为:
Array ( [0] => D:/wwwroot/78moban.com/ui/code/list [1] => D:/wwwroot/78moban.com/ui/code [2] => D:/wwwroot/78moban.com/ui/css [3] => D:/wwwroot/78moban.com/ui/img [4] => D:/wwwroot/78moban.com/ui/js [5] => D:/wwwroot/78moban.com/ui/tinymce/langs [6] => D:/wwwroot/78moban.com/ui/tinymce/skins [7] => D:/wwwroot/78moban.com/ui/tinymce )
函数
点击复制代码 PHP
function GetDirsInDir_Recursive($dir)
{
$dirs = array();
if (!file_exists($dir)) {
return array();
}
if (!is_dir($dir)) {
return array();
}
$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 ($array as $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 ($array as $key => $value) {
$dirs[] = $dir . $file . '/' . $value;
}
}
$dirs[] = $dir . $file;
}
}
}
closedir($handle);
}
}
return $dirs;
}
新闻资讯 更多
- 【建站知识】查询nginx日志状态码大于400的请求并打印整行04-03
- 【建站知识】Python中的logger和handler到底是个什么?04-03
- 【建站知识】python3拉勾网爬虫之(您操作太频繁,请稍后访问)04-03
- 【建站知识】xpath 获取meta里的keywords及description的方法04-03
- 【建站知识】python向上取整以50为界04-03
- 【建站知识】scrapy xpath遇见乱码解决04-03
- 【建站知识】scrapy爬取后中文乱码,解决word转为html 时cp1252编码问题04-03
- 【建站知识】scrapy采集—爬取中文乱码,gb2312转为utf-804-03