当前位置:和仁网 >聚合 > 正文

PHP 删除目录下的文件

2021-03-15 1

PHP删除指定目录下的文件示例:

<?php
//定义删除文件函数
function deleteFile($dirName) {
    // 判断是否为有效句柄
    if ($handle = opendir( $dirName )) {
        // 循环打开的句柄条目(打开成功,则返回文件名;打开失败,则返回false)
        while ( false !== ($item = readdir ($handle))) {
            if ($item != "." && $item != "..") {
                // 判断是否为目录
                if (is_dir($dirName . "/" . $item )) {
                    // 递归删除
                    deleteFile($dirName . "/" . $item);
                } else {
                    if (unlink($dirName . "/" . $item)) {
                        echo "成功删除{$dirName}文件夹下的{$item}文件<br/>";
                    }
                }
            }
        }
        // 关闭打开的句柄
        closedir( $handle );
    }
}

//测试【testFile目录下有NewFile.html】
deleteFile("testFile");
//成功删除testFile文件夹下的NewFile.html文件
?>
<?php
function del_dir($dir){ //删除目录
if($dir== || !count($dir)){
return;
}
if(is_array($dir)){
foreach($dir as $d){
@chmod($d, 0777);
del_dir($d);
}
}else{
if(!($mydir=@dir($dir))){
return;
}
while($file=$mydir->read()){
if(is_dir("$dir$file") && $file!=. && $file!=..){
@chmod("$dir$file", 0777);
del_dir("$dir$file");
}elseif(is_file("$dir/$file")){
$file_time=@stat($file); //读取文件的最后更新时间
if(time()-$file_time>3600*24*14){//只删除14天以前的文件
@chmod("$dir/$file", 0777);
@unlink("$dir/$file");
}
}
}
$mydir->close();
@chmod($dir, 0777);
@rmdir($dir);
}
}
//test 1:
$dir=$_SERVER[DOCUMENT_ROOT]."/cache/";
del_dir($dir);
$dir=$_SERVER[DOCUMENT_ROOT]."/cache22/";
del_dir($dir);
//test 2:
$dir[0]=$_SERVER[DOCUMENT_ROOT]."/cache/";
$dir[1]=$_SERVER[DOCUMENT_ROOT]."/cache22/";
del_dir($dir);
?>

不知道是不是这个意思,没咋明白你的要求删除文件可以使用unlink,没有必要将目录转换成绝对路径,如果想删除images中的文件,可以直接unlink("/image/文件名")即可~!
<? del_dir(目录)?>可多次使用
本周热门
本月热门