php删除目录与目录中文件代码

例1

 代码如下 复制代码

function del_dir($dir){
{
if (!$dir) { return ; }
$cacheDir = $dir;
$dh = opendir($cacheDir);
while ( $file = readdir($dh) ) {

if (($file == '.') || ($file == '..')) { continue; }

if (file_exists( $cacheDir .'/'.$file)) {
if(is_dir( $cacheDir .'/'.$file)){
del_dir($cacheDir .'/'.$file);
}elseif (!unlink($cacheDir .'/'. $file)) {

//删除完操作
}
}
}
}
}

例2

 代码如下 复制代码

<?
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;
  }
}

?>

例3

 代码如下 复制代码

function removeDir($dirName)
{
     if(!is_dir($dirName)) //如果传入的参数不是目录,则为文件,应将其删除
     {
     @unlink($dirName);//删除文件
       return false;
     }
     $handle = @opendir($dirName); //如果传入的参数是目录,则使用opendir将该目录打开,将返回的句柄赋值给$handle
     while(($file = @readdir($handle)) !== false) //这里明确地测试返回值是否全等于(值和类型都相同)FALSE,否则任何目录项的名称求值为 FALSE 的都会导致循环停止(例如一个目录名为“0”)。
     {
         if($file!='.'&&$file!='..') //在文件结构中,都会包含形如“.”和“..”的向上结构,但是它们不是文件或者文件夹
         {
         $dir = $dirName . '/' . $file; //当前文件$dir为文件目录+文件
         is_dir($dir)?removeDir($dir):@unlink($dir); //判断$dir是否为目录,如果是目录则递归调用reMoveDir($dirName)函数,将其中的文件和目录都删除;如果不是目录,则删除该文件
         }
     }
     closedir($handle);
     
     return rmdir($dirName) ;
}

例4
删除几天前创建的目录

 代码如下 复制代码

<?php
function delfile($dir,$n) //删除DIR路径下N天前创建的所有文件;
{
if(is_dir($dir))
  {
 if($dh=opendir($dir))
   {
    while (false !== ($file = readdir($dh)))
    {
     if($file!="." && $file!="..")
     {
       $fullpath=$dir."/".$file;
       if(!is_dir($fullpath))
       {           
        $filedate=date("Y-m-d", filemtime($fullpath));
        $d1=strtotime(date("Y-m-d"));
        $d2=strtotime($filedate);
        $Days=round(($d1-$d2)/3600/24);
        if($Days>$n)
        unlink($fullpath);  ////删除文件
  
         }
     }     
    }
   }
   closedir($dh);
 }
}
?>

时间: 2024-09-22 23:32:12

php删除目录与目录中文件代码的相关文章

Linux系统递归生成目录中文件的md5的方法

  这篇文章主要介绍了Linux系统递归生成目录中文件的md5的方法,利用PHP脚本实现,需要的朋友可以参考下 linux下使用md5sum递归生成整个目录的md5 今天要用md5sum操作目录,递归生成目录下所有文件的md5值,结果发现它不支持递归操作于是写了个php脚本处理下 代码: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 3

PHP统计目录中文件以及目录中目录大小的方法_php技巧

本文实例讲述了PHP统计目录中文件以及目录中目录大小的方法.分享给大家供大家参考,具体如下: <?php //循环遍历目录中所有的文件,并统计目录和文件的大小 $dirName="phpMyAdmin"; $dir=opendir($dirName); //返回一个资源类型 while($fileName=readdir($dir)){ $file=$dirName."/".$fileName; if($fileName!="." &

shutil rmtree-python中用shutil.rmtree()来删除目录及目录内部文件,最后一个文件总是删除不了

问题描述 python中用shutil.rmtree()来删除目录及目录内部文件,最后一个文件总是删除不了 为什么python中用shutil.rmtree()来删除目录及目录内部的文件,最后一个文件总是删除不了 解决方案 如果是Windows平台,请确认下最后那个文件是否被打开使用了. 解决方案二: 那个文件是否被占用了,能直接手动删除吗

非常好的目录导航文件代码

这个代码虽然短小,但很实用,它可以轻松建立你指定的目录里的指定后缀名文件的超连接,而且可以设定,不会将指定的目录首页导航. <?php function navbar(){ $files = dir("."); //指定目录 $pipe  = " | ";    //管道符 //通过以下的循环搜索目录中所有文件 while ($current = $files->read()) {   //ignor all files not of htm type.

非常好的目录导航文件代码_php基础

这个代码虽然短小,但很实用,它可以轻松建立你指定的目录里的指定后缀名文件的超连接,而且可以设定,不会将指定的目录首页导航. <?php function navbar(){ $files = dir("."); //指定目录 $pipe  = " | ";    //管道符 //通过以下的循环搜索目录中所有文件 while ($current = $files->read()) {   //ignor all files not of htm type.

使用PHP遍历文件目录与清除目录中文件的实现详解_php技巧

今天无聊中练习了一下PHP遍历文件目录的程序,编写了以下两个程序,不过质量不是很好,轻拍~~~1.清除PHP缓存文件 复制代码 代码如下: <?php  function read_dir($dir,$file)  {      $a =strpos($file,".php");      if($a>0)       {          unlink($dir . $file);          echo "delete $dir$file <br&g

删除无限级目录与文件代码共享

<?//删除目录//本程序由wm_chief原创,如要转载,请注明作者与来源(http://www.phome.net)class  del_path{function  wm_chief_delpath($del_path){if(!file_exists($del_path))//目标目录不存在则建立{echo"目录不存在";return  false;}$hand=opendir($del_path);$i=0;while($file=readdir($hand)){$i+

tomcat 虚拟目录与显示目录中文件列表

原文http://www.cnblogs.com/jifeng/archive/2011/08/08/2130565.html 虚拟目录: 该方法推荐使用,比较简单. 在%tomcat%\conf\Catalina\localhost(该目录可能需要手工创建)下新建一个文件abc.xml,注意文件名中的abc就表示虚拟目录的名称,所以不可随意命名,该文件的内容为: <Context docBase="d:\myJsp" />重启Tomcat即可.   目录列表显示文件: 修

删除无限级目录与文件代码共享_PHP编程

<?//删除目录//本程序由wm_chief原创,如要转载,请注明作者与来源(http://www.phome.net)class  del_path{function  wm_chief_delpath($del_path){if(!file_exists($del_path))//目标目录不存在则建立{echo"目录不存在";return  false;}$hand=opendir($del_path);$i=0;while($file=readdir($hand)){$i+