php目录函数操作,以及使用递归
- opendir
- 找到对应的目录
- 将目录中所有文件全部读入到内存(包含子文件夹下的所有文件)
- 将目录指针指向第一个文件
- readdir
- 读取当前指针所指向的文件的文件名
- 2.将目录指针向下移动一位
- chdir
- 改变当前操作目录,代表进入到目标目录
$masterdir = "C:\\Program Files";
function openmydirs($masterdir)
{
if (is_dir($masterdir))
{
$o = opendir($masterdir);
while($saiwa = readdir($o))
{
if ($saiwa=="." or $saiwa=="..")
{
continue;
}
$wholepath = $masterdir."\\".$saiwa;
//这行代码如此重要,因为我们必须拼接出一个完整的路径,才能在下面调用is_dir,chdir等和目录操作有关的函数if(count($myarray)==3)
{
echo substr($myarray[2],0,2).":"."\n";
} if (is_dir($wholepath))
{
chdir($wholepath);
openmydirs($wholepath);
}
echo $wholepath."\n";
}
}
}
<?php
/**
* Created by PhpStorm.
* User: Administrator
* Date: 2018/12/19 0019
* Time: 上午 1:22
*/
$masterdir = "D:\\2,PHP高级核心";
echo strpos($masterdir,"\\",3)."\n";
$storepath = "E:\\mycourse.txt";
$fetarray = array();
function openmydirs($masterdir,$handle)
{
global $fetarray;
if (is_dir($masterdir))
{
$o = opendir($masterdir);
while($saiwa = readdir($o))
{
if ($saiwa=="." or $saiwa=="..")
{
continue;
}
$wholepath = $masterdir."\\".$saiwa;
$myarray = explode("\\",$wholepath);
if(count($myarray)==3)
{
fwrite($handle,substr($myarray[2],0,2).":"."\r\n") ;
} if (is_dir($wholepath))
{
chdir($wholepath);
openmydirs($wholepath,$handle);
}
if (is_file($wholepath))
{
if(strrpos($wholepath,".wmv")>0)
{
fwrite($handle,substr($wholepath,strrpos($wholepath,"\\")+1,strrpos($wholepath,".wmv"))."\r\n") ;
} }
//echo $wholepath."\n";
}
}
}
//$myarray=openmydirs($masterdir);
$handle = fopen($storepath,'a');
openmydirs($masterdir,$handle);
fclose($handle);
?>
php目录函数操作,以及使用递归的更多相关文章
- Linux下文件及目录的一些操作(附递归遍历目录源码)
1.获取当前工作目录 #include <unistd.h> 1.char *getcwd(char *buf,size_t size); 2. 3.其中,buf为缓冲区地址,size为给 ...
- linux 文件名称前后缀操作函数----取目录函数dir、取文件名称函数notdir、取后缀函数suffix、取前缀basename、加后缀函数addsuffix、加前缀addprefix、连接函数join
1.1 文件名操作函数 下面我们要介绍的函数主要是处理文件名的.每个函数的参数字符串都会被当做一个或是一系列的文件名来对待. 1.1.1 取目录函数dir $(dir < ...
- Objective-C:Objective-C:文件中一些对目录进行操作的函数
IO文件中,一些对目录进行操作的函数:获取.切分.组合 一些对目录进行操作的函数: 获取用户的姓名:(NSString*)NSUserName() ; ———>NSString *Str ...
- PHP中目录的操作
文件的操作:创建文件,删除文件,重命名文件rename(),移动/复制文件,读取,大小(PHP都有内置的函数) 目录的操作:创建目录(有),删除目录,复制目录,统计目录大小,遍历(自己定义函数) 一. ...
- 利用目录函数(opendir,readdir,closedir)查找文件个数
如何知道一个目录下的所有文件个数呢?或许可以用tree来学(zhuang)习(bi)的同时知道文件个数.Linux系统io函数为我们提供了目录操作函数,其中有一个比较重要(实际上有三个,因为它们经常配 ...
- C语言中关于对目录的操作
原文地址:C语言中关于对目录的操作 目录的操作不论是在嵌入式产品还是应用软件编程都是必不可少的,不同的开发语言可能略有不同,笔者主要是讨论在Linux平台下对目录的一系列操作: 1.获取当前目录操作: ...
- path类和directory类对文件的路径或目录进行操作
Path: 对文件或目录的路径进行操作(很方便)[只是对字符串的操作] 1.目录和文件操作的命名控件System.IO 2.string Path.ChangeExtension(string ...
- linux指令(目录类操作指令)
pwd 显示当前所在的工作目录 cd 目标目录 例如cd /boot/grub 从当前目录切换到某个目录 cd 切换到根目录 cd.. 切换到当前目录的上层目录 ls 显示当前目录下的内容 ...
- php目录函数
1.创建 mkdir()mkdir(目录地址,权限模式,是否递归创建)默认不支持递归创建,用第三个参数true表示递归创建 <?php header("content-type:tex ...
随机推荐
- Vue+Python 电商实战
安装webStorm https://blog.csdn.net/qq_38845858/article/details/89850737 安装NodeJs http://nodejs.cn/do ...
- 《Python编程从0到1》笔记5——图解递归你肯定看完就能懂!
本小节的示例比较简单,因为在每次递归过程中原问题仅缩减为单个更小的问题.这样的问题往往能够用简单循环解决.这类递归算法的函数调用图是链状结构.这种递归类型被称为“单重递归”(single recurs ...
- json得回顾
- mysql查看锁查看
关键词:mysql锁争用,mysql锁查看 --------------------- 作者:边城cn 来源:CSDN 原文:https://blog.csdn.net/miyatang/articl ...
- Java四类八项基本数据类型
一. 四类八项基本数据类型 1. 整数类型(byte.short.int.long) 三点注意事项: a. Java各整数类型有固定的表示范围和字段长度,其不收操作系统的影响,以保持Java的可移植性 ...
- [..net core]4.入口,Main方法 及InProcess
通常控件台程序都有一个main方法, public class Program { public static void Main(string[] args) { CreateWebHostBuil ...
- doT学习(二)之用法集合
Advanced templating: illustrates defines and includes. Include external snippet defined in a variabl ...
- PhpStorm 2017.3-2018.2 汉化包
JetBrains 系列软件汉化包 关键字: Android Studio 3.0-3.1.3 汉化包 CLion 2018.1-2018.2 汉化包 GoLand 2017.3.2-2018.2 汉 ...
- qt嵌入式html和本地c++通信方式
前沿:我们在做qt项目的时候,通常会把某个html网页直接显示到应用程序中.比如绘图.直接把html形式的图标嵌入到应用程序中 但是我们需要把数据从后台c++端传到html端,实现显示.qt实现了相关 ...
- node.js使用express模块创建web服务器应用
1.安装express模块 在命令行输入 npm install body-parser --save npm install express --save 2.创建app.js文件 /*应用程序入口 ...