Heim >php教程 >php手册 >PHP如何删除文件或文件夹

PHP如何删除文件或文件夹

WBOY
WBOYOriginal
2016-06-13 09:38:061005Durchsuche

有时候我们需要用PHP来删除文件和文件夹,PHP本来也都有函数可以实现,下面简单记录一下代码,方便以后信守拈来。先看一下代码

<?
function deldir($dir) {
  //先删除目录下的文件:
  $dh=opendir($dir);
  while ($file=readdir($dh)) {
    if($file!="." && $file!="..") {
      $fullpath=$dir."/".$file;
      if(!is_dir($fullpath)) {
          unlink($fullpath);
      } else {
          deldir($fullpath);
      }
    }
  }
 
  closedir($dh);
  //删除当前文件夹:
  if(rmdir($dir)) {
    return true;
  } else {
    return false;
  }
}
?>

unlink() 函数用于删除文件。若成功,则返回 true,失败则返回 false。rmdir() 函数用于删除空的目录。它尝试删除 dir 所指定的目录。 该目录必须是空的,而且要有相应的权限。

一个实例:删除某个文件夹下的所有".svn"文件夹(包括其内容也要被删除)。

<?php
function delsvn($dir) {
  $dh=opendir($dir);
  //找出所有".svn" 的文件夹:
  while ($file=readdir($dh)) {
    if($file!="." && $file!="..") {
      $fullpath=$dir."/".$file;
      if(is_dir($fullpath)) {
            if($file==".svn"){
                delsvndir($fullpath);
            }else{
                delsvn($fullpath);
            }
      }
    }
  }
 
  closedir($dh);
}
function delsvndir($svndir){
    //先删除目录下的文件:
    $dh=opendir($svndir);
    while($file=readdir($dh)){
        if($file!="."&&$file!=".."){
            $fullpath=$svndir."/".$file;
            if(is_dir($fullpath)){
                delsvndir($fullpath);
            }else{
                unlink($fullpath);
            }
        }
        
    }
    closedir($dh);
    //删除目录文件夹
    if(rmdir($svndir)){
        return  true;
    }else{
        return false;
    }
    
}
$dir=dirname(__FILE__);
//echo $dir;
delsvn($dir);
?>
Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn