实现搜索文件的功能需要用到php中的几个函数:is_dir(),opendir(),readdir(),closedir
要查找文件,首先得确定文件的路径,定义为$path;
提供了$path后要判断该路径是否有效,使is_dir()来进行判断,返回true;
确定了文件路径,就打开路径,opendir($path),如果成功则返回目录句柄的 resource,失败则返回 FALSE。
(如果 path 不是一个合法的目录或者因为权限限制或文件系统错误而不能打开目录,opendir() 返回 FALSE 并产生一个 E_WARNING 级别的 PHP 错误信息。可以在 opendir() 前面加上“@”符号来抑制错误信息的输出。)
打开了路径就开始读取里面的文件,使用readdir(),readdir — 从目录句柄中读取条目,返回目录中下一个文件的文件名。文件名以在文件系统中的排序返回。
<?php
/*
类document主要用于实现获取指定文件夹下的所有文件,并将这些文件存储到数组中返回
*/
class document{
private $file_array=array();
private $folder_array=array();
private $all_array=array();
function fetch($dir){
$H=opendir($dir);
while(false!==($_file=readdir($H))){
if(is_dir($dir."/".$_file)&&$_file!="."&&$_file!==".."&&$_file!=="Thumbs.db"){
array_push($this->folder_array,$dir."/".$_file);
$this->fetch($dir."/".$_file);
}elseif(is_file($dir."/".$_file)&&$_file!="."&&$_file!==".."&&$_file!=="Thumbs.db"){
array_push($this->file_array,$dir."/".$_file);
}
}
closedir($H);
$this->all_array["folder"]=$this->folder_array;
$this->all_array["file"]=$this->file_array;
return $this->all_array;
}
}
/*
实现下载文件的显示
*/
$d=new document();
$f=$d->fetch("E:/temp/"); //搜索指定目录下的文件,..表示当前目录
//print_r($f["folder"]); //返回所有文件夹的数组
//print_r($f["file"]); //返回所有文件的数组
$ff=$f["file"];
$sum=count($ff); //计算有多少个文件
for($i=0;$i<$sum;$i++){
echo "<tr><td>".$ff[$i]."</td><td><a href='download_1.php'?title=".$ff[$i]."'>下载</a></td></tr><br>";
//echo "<a href='FileDownload_1.php'?title='".$ff[$i]."'>下载</a>";
}
?>
句柄:
句柄是指使用的一个唯一的整数值,是指一个四字节长的数值,用于标志应用程序中的不同对象和同类对象中的不同的实例,诸如,一个窗口,按钮,图标,滚动条,输出设备,控件或者文件等,应用程序能够通过句柄访问相应的对象的信息。
Thumbs.db:
Thumbs.db文件是一个数据库,里面保存了这个目录下所有图像文件的缩略图(格式为jpeg)。当以缩略图查看时(展示一幅图片或电影胶片) ,将会生成一个Thumbs.db文件。
检查文件是否存在,可以用file_exists()函数
分享到:
相关推荐
在C#编程中,动态搜索文件或文件夹是一项常见的任务,尤其在开发桌面应用程序时,用户可能需要查找特定的文件或目录。这个基础的C#例子展示了如何实现这一功能,结合了菜单窗体和搜索功能,使用户界面更加友好。 ...
在IT领域,文件或文件夹对比工具是一种非常实用的软件工具,它可以帮助用户快速检查两个文件或文件夹之间的差异,从而提高工作效率。本篇文章将详细阐述这类工具的重要性和使用方法,以及一个具体的例子——Beyond ...
### 加密文件或文件夹的重要知识点 #### 一、加密文件或文件夹 **操作步骤:** 1. **打开Windows资源管理器:** 可通过点击“开始”按钮,找到“程序”->“附件”->“Windows资源管理器”来打开。 2. **右键单击...
- **搜索功能**:利用操作系统内置的搜索工具,输入关键词查找文件或文件夹。 - **文件路径**:根据文件的完整路径,通过导航找到具体位置。 4. **权限问题**: - **权限设置**:系统会为每个文件和文件夹分配读...
标题中的“VB查找文件(可搜索子文件夹)”指的是使用Visual Basic(VB)编程语言编写的一个程序,该程序能够遍历指定的目录及其所有子目录,查找并列出指定类型的文件。这个功能在处理大量文件时非常实用,比如在...
文件夹的操作使用了DIR *类型,实现了文件夹的遍历和搜索操作。 FATFS文件系统提供了一个轻量级的文件系统解决方案,适用于嵌入式系统和便携式存储设备中。文件复制函数和文件夹复制函数实现了文件和文件夹的复制...
7. 查找文件或文件夹:可以利用通配符*和?进行模糊查找,或通过“开始”菜单的搜索框输入关键词进行查找。也可以在文件窗口中使用搜索功能快速定位。 8. 设置文件或文件夹的属性:文件的默认属性包括只读、存档、...
标题中的“查找文件和文件夹程序”指的是一个利用VC(Visual C++)编程语言开发的应用程序,该程序设计用于在计算机文件系统中搜索特定的文件和文件夹。这个程序使用了迭代法,这是一种通过逐个检查集合的元素来查找...
标题中的“查找文档,文件,文件夹工具”指的是一个专门...它以其高效、易用和强大的搜索能力,成为许多用户管理和查找文件的首选。对于经常需要处理大量文件的个人和企业来说,这样的工具无疑是提高生产力的重要助手。
7. **搜索文件或文件夹**:在资源管理器的搜索框输入关键词,可快速找到所需文件。 8. **隐藏文件或文件夹**:通过文件属性设置可以隐藏文件,隐藏文件默认不显示在文件列表中。 9. **查看隐藏的文件或文件夹**:...
在Windows下实现的搜索指定目录下的所有文件和子目录并保存到树中,最后显示出来。由于本人是个菜鸟,贴出来代码,希望高人们指点一二。
标题中的"C#硬盘文件或文件夹搜索"是一个关于利用C#编程语言实现的文件和文件夹搜索工具。这个工具能够帮助用户在计算机的硬盘中快速定位到特定的文件或文件夹,提高工作效率。C#是一种面向对象的、类型安全的编程...
这意味着用户无需先解压就可以直接在压缩包内查找文件,节省了时间和磁盘空间。 总的来说,"搜索神器"是一款强大且全面的搜索工具,它的实时搜索、全文检索以及对压缩文件的支持,使其在众多文件管理软件中脱颖而出...
在IT领域,文件和文件夹的操作是日常工作中不可或缺的一部分,无论是开发人员编写代码,还是普通用户管理个人文档,都需要熟练掌握这些基本技能。本主题主要围绕"文件及文件夹常用操作类",涵盖复制、剪切、查找、...
FindFirstFile 函数用于搜索指定路径下的文件或文件夹,而 FindNextFile 函数用于继续搜索下一个文件或文件夹。 BOOL FolderExist(CString strPath){ WIN32_FIND_DATA wfd; BOOL rValue = FALSE; HANDLE hFind ...
用于根据内容关键字搜索指定文件夹下的所有包含该内容关键字的文件。只支持wins下处理。是命令行工具。目前支持所有utf-8编码的文本文件以及支持doc/docx, ppt/pptx, pdf, xls/xlsx等文件。还依靠Tesseract-OCR支持...
这个工具能够有效地帮助用户在计算机的系统盘中快速找到所需的文件或文件夹,并且允许用户在搜索过程中随时停止操作。其良好的容错性和较高的运行速度是它的主要优点。 首先,我们要理解文件搜索的基本原理。在...
"批量文件或文件夹搜索器"是一款高效实用的工具,专为用户在大量文件和文件夹中快速查找所需内容而设计。在日常工作中,我们常常需要处理大量的数据和文件,手动寻找特定文件可能会非常耗时。这款软件通过智能化的...
重命名是为了便于管理和查找文件或文件夹。默认情况下,新建的文件夹可能命名为“新建文件夹 1”等,这样的名字不够具体,不利于识别。重命名的步骤如下: 1. **鼠标操作**:将鼠标指针移动到要重命名的文件或...