Home >Backend Development >PHP Problem >How to delete files based on path in php

How to delete files based on path in php

藏色散人
藏色散人Original
2021-06-24 09:15:241964browse

php method to delete files based on path: 1. Delete folders and files under a path through the "function deleteDir($dir){...}" method; 2. Through the "function deldir($path) ){...}"delete.

How to delete files based on path in php

The operating environment of this article: windows7 system, PHP7.1 version, DELL G3 computer

How does php delete files based on the path? PHP deletes a path Methods for all folders and files under

Function used:

scandir($path) Traverses all files in a folder and returns an array.

unlink($filename) Delete the file.

rmdir($path) Delete only empty folders

Code:

Delete a single file

$file = "./aa/aas.txt";
if (!unlink($file))
{
echo ("Error deleting $file");
}
else
{
echo ("Deleted $file");
}

Delete all folders and files under a path Method 1

$path = "./aa";
function deleteDir($dir)
{
    if (!$handle = @opendir($dir)) {
        return false;
    }
    while (false !== ($file = readdir($handle))) {
        if ($file !== "." && $file !== "..") {       //排除当前目录与父级目录
            $file = $dir . '/' . $file;
            if (is_dir($file)) {
                deleteDir($file);
            } else {
                @unlink($file);
            }
        }
    }
    @rmdir($dir);
}
deleteDir($path);

Method 2 to delete all folders and files under a path

//设置需要删除的文件夹
$path = "./aa";
//清空文件夹函数和清空文件夹后删除空文件夹函数的处理
function deldir($path){
   //如果是目录则继续
   if(is_dir($path)){
    //扫描一个文件夹内的所有文件夹和文件并返回数组
   $p = scandir($path);
   foreach($p as $val){
    //排除目录中的.和..
    if($val !="." && $val !=".."){
     //如果是目录则递归子目录,继续操作
    if(is_dir($path.'/'.$val)){
      //子目录中操作删除文件夹和文件
      deldir($path.'/'.$val);
      //目录清空后删除空文件夹
      @rmdir($path.'/'.$val);
    }else{
      //如果是文件直接删除
      unlink($path.'/'.$val);
    }
}
   }
}
  }
 //调用函数,传入路径
 deldir($path);

Recommended learning: "PHP Video Tutorial"

The above is the detailed content of How to delete files based on path in php. For more information, please follow other related articles on the PHP Chinese website!

Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn