递归删除指定目录下的所有文件

<?php
/××
× 递归删除指定目录下的所有文件和目录
* @param $dir 指定目录
×/
function deldir($dir) {
$dirhandle=@opendir($dir);
while($file_name=@readdir($dirhandle)){
if ($file_name!='.' && $file_name!='..'){
if (is_dir("$dir/$file_name")){
deldir($dir.'/'.$file_name);
@rmdir("$dir/$file_name");
}else{
@unlink("$dir/$file_name");
}
}
}
@closedir($dirhandle);
}

// 调用
deldir('file');



这里用到几个系统函数
[color=darkblue]1、opendir(path, context) 打开目录 [/color]
参数一:打开的目录路径(必需)
参数二: 规定目录句柄的环境 (可选,还没用过)
返回: 成功,返回一个目录流,否则返回 false 以及一个 error。

[color=darkblue]2、readdir(dir_stream) 读文件[/color]
参数:由opendir函数返回的目录流,也就是目录句柄。(必需)
返回:成功,返回目录中下一个文件的文件名。

[color=darkblue]3、is_dir(file) 检测是否是目录[/color]
参数: 函数检查指定的文件是否是目录。(必需)
返回: boolean

[color=darkblue]4、rmdir(dir, context) 删除目录[/color]
参数一:规定要删除的目录 (必需)
参数二:规定目录句柄的环境 (可选,还没用过)
返回: boolean

[color=darkblue]5、unlink(filename, context) 删除文件[/color]
参数一:规定要删除的文件 (必需)
参数二:规定目录句柄的环境 (可选,还没用过)
返回: boolean

[color=darkblue]通常在使用这几个函数
opendir()、readdir()、rmdir()、unlink()时,在前面加上错误抑制符'@'。[/color]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值