1.创建 mkdir()
mkdir(目录地址,权限模式,是否递归创建)
默认不支持递归创建,用第三个参数true表示递归创建
<?php header("content-type:text/html;charset=utf-8"); /* 创建目录 1.创建 mkdir() mkdir(目录地址,权限模式,是否递归创建) 默认不支持递归创建,用第三个参数true表示递归创建 0755 该参数被忽略,在windows上 linux上,表示权限。 */ $path = './some/path/'; $result = mkdir($path,0755,true); var_dump($result);
2.删除目录
<?php /* 删除目录:rmdir(目录地址) */ $path = './some/path/'; //删除path $result = rmdir($path); var_dump($result);
3.读取文件夹内容:
<?php header("content-type:text/html;charset=utf-8"); /* 获得目录内容 opendir(),readdir(),closedir() 获取目录中存在哪些文件 opendir(目录句柄),打开一个目录句柄 句柄,handle,一种程序与文件系统通讯的资源 文件名=readdir(句柄); //读取目录中的一个文件名 返回文件名 执行一次尽可以读取一个文件名,同时向下移动句柄指针 */ $path = './some/path/'; $handle = opendir($path); //var_dump($handle); //$basename= readdir($handle); //echo $basename,'<br>'; //$basename= readdir($handle); //echo $basename,'<br>'; //$basename= readdir($handle); //echo $basename,'<br>'; //$basename= readdir($handle); //echo $basename,'<br>'; /*配合循环结果,如果读取不到结果,则返回false,直接使用while即可*/ /* while (条件为真) {要执行的代码;} false!== 严格不等于,防止文件夹的名字为0,0相当于false; */ while(false !== $basename=readdir($handle)){ //过滤掉. .. if($basename=='.' || $basename == '..') continue; echo $basename,'<br>'; } //关闭句柄 closedir($handle); /* 获得目录内容 opendir(),readdir(),closedir() 获取目录中存在哪些文件 opendir(目录句柄),打开一个目录句柄 句柄,handle,一种程序与文件系统通讯的资源 $path = './some/path/'; $handle = opendir($path); var_dump($handle); /*
4.递归获取文件的目录内容
<?php header("content-type:text/html;charset=utf-8"); /*递归获取文件的目录内容*/ /* 获得目录内容 opendir(),readdir(),closedir() 获取目录中存在哪些文件 opendir(目录句柄),打开一个目录句柄 句柄,handle,一种程序与文件系统通讯的资源 文件名=readdir(句柄); //读取目录中的一个文件名 返回文件名 执行一次尽可以读取一个文件名,同时向下移动句柄指针 */ $path = './some/path/'; readDirR($path); /*配合循环结果,如果读取不到结果,则返回false,直接使用while即可*/ /* while (条件为真) {要执行的代码;} false!== 严格不等于,防止文件夹的名字为0,0相当于false; !当读取到文件时文件夹时,继续读取 递归获取目录内容: 获得某个目录,几及其后代目录的全部内容。 思路:读取目录下内容,如果发现读取的为目录,递归调用该函数,读取子目录内容,以此递归。 */ function readDirR($path){ $handle = opendir($path); while(false !== $basename=readdir($handle)){ //过滤掉. .. if($basename=='.' || $basename == '..') continue; echo $basename,'<br>'; //判断当前读取到的是否为目录 if(is_dir($path. '/' . $basename)){ //是个目录,递归调用 readDirR($path. '/' . $basename); } } closedir($handle); } ?>