获取指定目录下的所有文件名和路径,同时也包括子目录在内的所有文件
/**
* 获取指定目录下的文件列表
* 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;
}
分享到:
相关推荐
在PHP开发中,读取指定目录及其子目录下的所有文件名是一个常见的需求。这样的功能可以用于文件管理、上传下载、内容索引等多种场景。本文将介绍几种使用PHP读取目录及子目录下所有文件名的方法,并对比各自的优缺点...
例如,`TDirectory.GetFiles()` 方法可以用来获取指定目录下的所有文件名,而`TDirectory.GetDirectories()` 则用于获取子目录的名称。 以下是一个简单的Delphi 7代码示例,演示了如何遍历指定文件夹下的所有文件名...
`searchDir`函数递归地搜索指定路径下的所有文件和子目录,将它们添加到引用参数`$files`中,最终返回文件名数组。第二个`getDir`函数通过`scandir()`读取目录内容,并递归地访问每一个子目录,打印目录名和文件名。...
在PHP中,`scandir()`函数可以用来扫描目录并返回包含所有文件和子目录的数组。`rename()`函数则用于重命名文件或目录,是实现文件名修改的关键。以下是一个简单的PHP脚本示例,演示了如何遍历目录并修改文件名: `...
在PHP中,获取一个目录下的所有文件名以及区分文件和目录是一个常见的需求,通常用于文件管理系统、上传文件处理、备份脚本等场景。本文将介绍如何使用PHP内置的函数来实现这个功能,并给出相应的示例代码。 首先,...
首先,我们需要了解PHP中的`scandir()`函数,它用于读取指定目录的内容,返回一个包含目录中文件和子目录的数组。接着是`is_dir()`和`is_file()`,这两个函数分别用于判断给定路径是否为目录或文件。再者,`basename...
`os.listdir()`可以获取指定路径下的所有文件和目录名,而`os.walk()`可以递归地遍历整个目录树。在Java中,`java.io.File`类的`list()`和`listFiles()`方法可以获取目录中的文件和子目录。对于Node.js,我们可以...
此函数用于递归地遍历指定路径下的所有子目录和文件,并检查每个文件是否为图像文件。如果是图像文件,则将其显示在HTML表格中。 **参数** - `$path`:指定要搜索的根目录。 **内部实现** - 首先判断传入的`$...
在PHP编程中,获取当前执行的PHP文件名是一个常见的需求,尤其是在进行网站开发时,经常需要根据当前页面的文件名来决定程序的具体行为,比如进行导航条高亮显示。本文介绍了几种使用PHP内置变量$_SERVER来获取当前...
它能够遍历指定目录下的所有文件和子目录,返回一个包含这些文件路径的数组。例如,`glob("./*")`表示获取当前目录(`.`)下的所有文件和子目录。 接下来,我们使用`foreach`循环遍历`glob()`返回的数组。在循环内部...
这表明我们要处理多个目标目录,因为`*`通常代表通配符,意味着所有以`dest/`开头的子目录下都要有`extdir/`子目录。因此,我们需要遍历所有这些目录,并在每个`extdir/`下复制图片。 为了实现这个功能,我们可以...
2. `getDirectoryList()`: 返回指定目录下的所有子目录名称。这个方法可能使用`scandir()`或`readdir()`来获取目录列表,然后过滤掉`.`和`..`这两个特殊目录。 3. `getFileList()`: 获取目录中的所有文件名。与`...
在PHP中实现扫描指定目录及其子目录下所有jpg文件的功能需要涉及到文件操作和递归函数的知识。以下是基于提供的文件内容详细解释的知识点: 1. 函数定义: 在PHP中定义函数使用关键字`function`,函数名可以自定义...
这个过程涉及到几个关键步骤,包括表单创建、数据提交、文件验证和文件移动到目标目录。以下是一个详细的关于如何使用PHP实现文件上传到指定目录的源代码解析。 首先,我们需要创建一个HTML表单,让用户选择要上传...
要实现这个功能,我们可以创建一个函数,接收目录路径作为参数,并在内部使用`scandir()`函数来获取目录中的文件和子目录。`scandir()`函数返回一个包含目录中所有条目的数组,包括"."和"..",分别代表当前目录和父...
`scandir()`函数用于获取指定目录下的所有文件和子目录。例如,`$files = scandir('my_directory')`将返回一个包含`my_directory`下所有文件和子目录的数组。 4. **读取目录信息** `dir()`函数可以打开一个目录...
注意,如果你的目录包含子目录,并且你想递归地处理它们,你还需要添加额外的逻辑来检查每个条目是否是目录,如果是,递归调用相同的过程。这可以通过`is_dir()`函数来实现。 此外,处理目录时,应考虑错误处理,...
这个函数接受一个参数,即需要列出内容的目录路径,然后返回一个数组,该数组中包含目录中的所有文件和子目录的名称。需要注意的是,`scandir()`函数在PHP 7.0.0版本后,增加了两个可选参数:`context`和`sort_flag`...