PHP-文件目录操作
使用递归遍历指定文件目录及其子目录下的所有文件
思路:
1.打开目录;
2.遍历目录,判断是否还是目录。是目录则返回第1步,不是目录进入第三步;
3.把文件名显示出来
使用到的文件目录操作函数:
1.getcwd():获取当前工作目录;
2.is_dir():检查指定的文件是否是目录;
3.opendir():打开目录句柄
——返回值:
成功则返回目录句柄资源。失败则返回 FALSE;
如果路径不是合法目录,或者由于许可限制或文件系统错误导致的目录不能打开,则抛出 E_WARNING 级别的错误;
可以通过在函数名称前添加 '@' 来隐藏 opendir() 的错误输出。
4.readdir():返回目录中下一个文件的文件名
——返回值:
若成功则返回条目名称(文件名),失败则返回 FALSE
5.closedir():关闭目录句柄
主要代码如下:
echo getcwd().'的文件目录树如下,目录用红色显示:<br />';
function fileSys($dir='./'){
//打开目录
if(is_dir($dir)){ $mydir = opendir($dir);
echo '<ul>';
while ($filename = readdir($mydir)){
if($filename != '.' && $filename != '..'){
//echo $filename.'<br />';
$newFile = $dir.'/'.$filename;//循环目录下文件不带“/”
if (is_dir($newFile)){
echo '<li><font color="red">'.$filename.'</font></li>';
fileSys($newFile); //调用递归遍历下级目录
}else{
echo '<li>'.$filename.'</li>';
}
}
}
echo '</ul>'; //关闭目录
closedir($mydir);
}else{
echo '参数不是一个目录<br />' ;
} } //调用函数
//echo getcwd().'是一个目录,目录内容如下:<br />';
fileSys();
PHP-文件目录操作的更多相关文章
- paip.文件目录操作uAPI php python java对照
paip.文件目录操作uAPI php python java对照 chdir -- 改变目录 chroot -- 改变根目录 dir -- directory 类 closedir -- 关闭目录句 ...
- php文件夹与文件目录操作函数
在php中一些常用的文件夹/文件目录操作函数总结. php文件夹操作函数 string basename ( string path [, string suffix] ) 给出一个包含有指向一个文件 ...
- 你一定要知道的关于Linux文件目录操作的12个常用命令
写在前面: 1,<你一定要知道的关于Linux文件目录操作的12个常用命令>是楼主收集的关于Linux文件目录操作最常用的命令,包括文件或目录的新建.拷贝.移动.删除.查看等,是开发人员操 ...
- [PY3]——IO——文件目录操作
IO—os.shutil—文件目录操作 目录操作 1. 新建 os.mkdir(path[, mode]) 相当于mkdir,新建目录 os.makedirs(path[, mode]) 相当于mkd ...
- python OS 模块 文件目录操作
Python OS 模块 文件目录操作 os模块中包含了一系列文件操作的函数,这里介绍的是一些在Linux平台上应用的文件操作函数.由于Linux是C写的,低层的libc库和系统调用的接口都是C AP ...
- php 文件夹 与 文件目录操作
php文件夹操作函数 string basename ( string path [, string suffix] )给出一个包含有指向一个文件的全路径的字符串,本函数返回基本的文件名.如果文件名是 ...
- Vim 中进行文件目录操作
Vim 中进行文件目录操作 当前文件名 我们知道Vim有48个寄存器,其中%只读寄存器中保存着当前文件路径. 例如在/home/harttle/下打开src/main.cpp,我们打印%的值: :ec ...
- python2.7.13标准库文件目录操作与文件操作
标准库的中文参考文档: http://python.usyiyi.cn/translate/python_278/library/index.html 官方标准库文档:https://docs.pyt ...
- ios文件系统文件目录操作
对于一个运行在iPhone得app,它只能访问自己根目录下得一些文件(所谓sandbox). 一个app发布到iPhone上后,目录结构如下: 1.其中获取 app root 可以用 NSHomeDi ...
- PHP学习笔记--文件目录操作(文件上传实例)
文件操作是每个语言必须有的,不仅仅局限于PHP,这里我们就仅用PHP进行讲解 php的文件高级操作和文件上传实例我放在文章的最后部分.--以后我还会给大家写一个PHP类似于网盘操作的例子 注意:阅读此 ...
随机推荐
- 延迟加载以及mybatis一级二级缓存
延迟加载 延迟加载:在真正使用数据时才发起查询,不用的时候不查询,又叫按需查询(懒加载) 立即加载:不管用不用,只要调用方法,直接发起查询 表关系:一对多 多对一 一对一 ...
- Android简单计时器(转)
原文:http://blog.csdn.net/fwwdn/article/details/7550822 本文利用ContextMenu(上下文菜单),Chronometer实现简单计数器. Mai ...
- SICOM SOP
SOPs A Service-Object Pair (SOP) Class is defined by the union of an Information Object Definition ( ...
- jquery源码部分分析
1.整体架构和如何辨别浏览器端和node端 自执行函数,判断在什么端,如果在浏览器端就执行factory函数 //(function(){a,b})(a,b) //jq大架构,闭包,自执行函数,传入函 ...
- 本地VMware虚拟机环境CentOS7.6 安装宝塔Linux面板
之前测试一直都在使用phpenv和phpstudy ,不过这两个集成环境时长容易出bug,各种问题劝退.之前Windows开始Linux的体验又不尽人意,今天介绍一个别的方法.VMware安装Linu ...
- VS中MFC项目文件特别大的解决办法
转 来自http://m.zhizuobiao.com/vc/vc-18082800177/ 自己插个眼 项目文件比较大因为 项目下有个隐藏文件夹.vs 下面是解决办法 本文主要向大家介绍了VC编程 ...
- 吴裕雄--天生自然JAVA数据库编程:执行数据库更新操作
import java.sql.Connection ; import java.sql.DriverManager ; import java.sql.Statement ; public clas ...
- Linux:Shell-Bash基本功能
1.历史命令 history [选项] [历史命令保存文件] 选项:-c 清空历史命令 -w 把缓存中的历史命令写入历史命令保存文件 ~/.bash_history 历史命令默认保存1000条,可以 ...
- Windows驱动开发-_DRIVER_OBJECT结构体
每个驱动程序会有唯一的驱动对象与之对应,并且这个驱动对象是在驱动加载的时候,被内核中的对象管理程序所创建的,内核对一个驱动只加载一个实例,是由内核中的I/O管理器负责加载的,驱动程序需要在Driver ...
- endnote的使用
下载网址: https://support.clarivate.com/Endnote/s/article/EndNote-Installer-download?language=en_US 关联of ...