欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  后端开发

PHP中目录操作实例详解

程序员文章站 2022-04-19 10:06:57
...
本文主要和大家分享PHP中目录操作实例详解,Mkdir(目录地址[,权限[,是否递归创建(默认为false)]]);成功返回true否则返回false。默认权限为0777,时最大访问权限。此设置在windows系统中不起作用(Linux操作)。
echo mkdir('./name/li');//当前目录下并没有name这个文件夹

执行此操作发现报错,因为根本不存在name这个文件夹,因此就不能建立在name文件夹下的li文件夹

PHP中目录操作实例详解

echo mkdir('./name/li',0777,true);//支持递归创建。

此时返回结果为1,表示执行成功,并且在当前目录下存在name文件夹,其子文件夹中也有li文件夹。这就是Mkdir()支持的递归创建----即,自动创建目录地址中不存在的文件夹。

删除目录:

Rmdir(目录地址);此处仅仅可以删除空目录,且不支持递归删除。

移动(改名):

Rename(旧地址,新地址);

rename('./name/li','./li');在上面的继承上进行此操作后,当前目录下name文件夹存在,且存在li文件夹,而name文件夹下的li文件夹消失了。(该函数也支持操作文件)

获取目录内容:

1.打开目录:目录句柄=opendir(目录地址);

2.读取文件:文件名=readdir(目录句柄);依次读取一个文件(子目录),同时向下移动句柄指针。如果取不到就返回false。(一般在目录中都存在两个逻辑子目录.和..分别表示当前目录和上级目录)。此处读取的是名字而不是内容。

3.关闭目录:closedir(目录句柄);

实例:递归删除文件
<?php
	/**
	*递归删除指定文件目录下的所有问价及文件夹
	**/
	function RemoveDir($path){
		$path=iconv('utf-8','gbk',$path);//windows中汉字编码为gbk,而php中使用的是utf-8编码。
		$dir_handle=opendir($path);
		echo "{$path}<br/>";
		while(false!==$file=readdir($dir_handle))//此处用false!==$file是因为有的文件夹如果命名为0的话。会造while($file=readdir($dir_handle))条件不满足
		{ 
			if($file=='.'||$file=='..')//存在逻辑子目录.和..
				continue;
			if(is_dir($path.'/'.$file)){//函数is_dir(文件地址)判断文件是否为目录。
				RemoveDir($path.'/'.$file);
			}else{
				unlink($path.'/'.$file);//unlink(文件地址)删除某个文件。
			}
		}
		closedir($dir_handle);
		return rmdir($path);
	}
	RemoveDir('./name');

相关推荐:

php中目录操作函数(删除,创建,判断)_PHP教程

以上就是PHP中目录操作实例详解的详细内容,更多请关注其它相关文章!

相关标签: php 详解 实例