php 获取指定目录下面的所有目录
时间:2023年10月04日
/来源:网络
/编辑:佚名
可以使用PHP的scandir()函数和is_dir()函数来获取指定目录下的所有目录。
scandir()函数返回一个包含指定目录中所有文件和目录的数组,is_dir()函数用于判断给定的路径是否是一个目录。
下面是一个示例代码,它使用了这两个函数来获取指定目录下的所有目录:
<?php
// 指定要查找的目录
$dir = "/path/to/directory";
// 使用scandir()函数获取目录中的所有文件和目录
$files = scandir($dir);
// 遍历所有文件和目录,使用is_dir()函数判断是否是目录
foreach ($files as $file) {
if ($file != "." && $file != ".." && is_dir($dir . "/" . $file)) {
echo $file . "\n";
}
}
?>
在上面的代码中,$dir变量指定要查找的目录。使用scandir()函数获取目录中的所有文件和目录,然后使用foreach循环遍历每个文件和目录。对于每个文件和目录,使用is_dir()函数判断是否是一个目录,如果是,则将目录名打印出来。注意,为了排除当前目录(”.”)和上级目录(”..”),在遍历时需要加上判断条件$file != "." && $file != ".."。
封装成函数
你需要多次使用一个代码块时,可以将其封装成一个函数,以便于在需要时进行调用。
下面是一个将获取指定目录下所有目录封装成函数的示例代码:
function getDirectories($dir) {
$directories = array();
if (is_dir($dir)) {
$files = scandir($dir);
foreach ($files as $file) {
if ($file != "." && $file != ".." && is_dir($dir . "/" . $file)) {
$directories[] = $file;
}
}
}
return $directories;
}
在这个函数中,我们传入一个参数$dir,该参数是要查找的目录的路径。函数首先创建一个空数组$directories,用于存储找到的目录名称。然后使用is_dir()函数判断传入的目录是否是一个合法的目录,如果是,就使用scandir()函数获取目录下的所有文件和目录。接着使用foreach循环遍历每个文件和目录,使用is_dir()函数判断是否是一个目录,如果是,将目录名添加到$directories数组中。最后,函数返回$directories数组,其中包含所有找到的目录名称。
要调用这个函数,只需要传入要查找的目录的路径即可,例如:
$dir = "/path/to/directory";
$directories = getDirectories($dir);
print_r($directories);
上述代码将获取$dir目录下的所有目录,并将它们存储在$directories数组中,然后使用print_r()函数打印出来。
scandir()函数返回一个包含指定目录中所有文件和目录的数组,is_dir()函数用于判断给定的路径是否是一个目录。
下面是一个示例代码,它使用了这两个函数来获取指定目录下的所有目录:
<?php
// 指定要查找的目录
$dir = "/path/to/directory";
// 使用scandir()函数获取目录中的所有文件和目录
$files = scandir($dir);
// 遍历所有文件和目录,使用is_dir()函数判断是否是目录
foreach ($files as $file) {
if ($file != "." && $file != ".." && is_dir($dir . "/" . $file)) {
echo $file . "\n";
}
}
?>
在上面的代码中,$dir变量指定要查找的目录。使用scandir()函数获取目录中的所有文件和目录,然后使用foreach循环遍历每个文件和目录。对于每个文件和目录,使用is_dir()函数判断是否是一个目录,如果是,则将目录名打印出来。注意,为了排除当前目录(”.”)和上级目录(”..”),在遍历时需要加上判断条件$file != "." && $file != ".."。
封装成函数
你需要多次使用一个代码块时,可以将其封装成一个函数,以便于在需要时进行调用。
下面是一个将获取指定目录下所有目录封装成函数的示例代码:
function getDirectories($dir) {
$directories = array();
if (is_dir($dir)) {
$files = scandir($dir);
foreach ($files as $file) {
if ($file != "." && $file != ".." && is_dir($dir . "/" . $file)) {
$directories[] = $file;
}
}
}
return $directories;
}
在这个函数中,我们传入一个参数$dir,该参数是要查找的目录的路径。函数首先创建一个空数组$directories,用于存储找到的目录名称。然后使用is_dir()函数判断传入的目录是否是一个合法的目录,如果是,就使用scandir()函数获取目录下的所有文件和目录。接着使用foreach循环遍历每个文件和目录,使用is_dir()函数判断是否是一个目录,如果是,将目录名添加到$directories数组中。最后,函数返回$directories数组,其中包含所有找到的目录名称。
要调用这个函数,只需要传入要查找的目录的路径即可,例如:
$dir = "/path/to/directory";
$directories = getDirectories($dir);
print_r($directories);
上述代码将获取$dir目录下的所有目录,并将它们存储在$directories数组中,然后使用print_r()函数打印出来。
新闻资讯 更多
- 【建站知识】查询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