PHP之目录操作相关函数解释

该文章适用于初学PHP的小白对目录操作函数进行相关的理解。


<?php 
/**
目录相关操作函数

	之前我们知道article下有a.txt b.txt c.txt d.txt 我们才去写
		但是当文件下有e.html f.mp3.。。。我们只要处理txt文件
	使用glob() 匹配文件

****/
//print_r(glob('*.txt')); //glob()查找的是当前目录下的匹配的
//print_r(glob('./article/*.txt'));	//OK

//glob()在工作中很有用,但是今天重点不是
//为了查看目录下的所有文件,用opendir
/*
	opendir   打开目录,返回资源句柄,可用于之后的 closedir(),readdir() 和 rewinddir() 调用中。
	readdir   读取目录 \,成功则返回文件名 或者在失败时返回 FALSE ,因此我用NULL是不对的
	mkdir 	创建目录
	rmdir 	删除目录
	closedir   关闭目录
	is_dir 	判断是否是目录

	unlink 删除文件
*/
$path = './misc';

var_dump(opendir($path));	//resource(3, stream)

$dh = opendir($path);
/*
echo readdir($dh); // . 
echo readdir($dh); // ..
echo readdir($dh); // a.txt
echo readdir($dh); // b.exe

// . 和 .. 是虚拟目录,当前目录和上级目录,
*/
echo "<hr />";

//判断目录
while (($filename = readdir($dh)) !== false) { //直接判断真假是不对的,因为可能会出现0,因此使用false
	echo $filename;
	if (is_dir('./misc/'.$filename)) {
	 	echo "是目录";
	 }
	 echo "<br />"; 
}

//创建
foreach (array('a', 'b', 'c', 'd') as $v) {
	$path = './misc/'.$v; //意思是在misc下创建目录
	
	if (file_exists($path) && is_dir($path)) {//先判断是否存在并且是目录
		echo $path."已经存在<br />";
	}else if (mkdir($path)) {
	 	echo $path."创建成功<br />";//第一次创建成功了,第二次创建就会失败,因为目录已经存在了
	 } else{
	 	echo $path."创建失败<br />";
	 }
}

//删除目录
foreach (array('a', 'c', 'e') as $v) {
	$path = './misc/'.$v;

	if (file_exists($path) && is_dir($path)) {
		if (rmdir($path)) {  //因为在linux下权限控制比较严格,所以要判断是否删除成功
		 	echo $path."目录删除成功<br />"; //非空目录禁止删除,rmdir只能删除非空目录
		 }else{
		 	echo $path."目录删除失败<br />";
		 } 
	}else{
		echo $path."目录不存在<br />";
	}

}


//关闭目录
closedir($dh);


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值