php专区

 首页 > php专区 > PHP高级 > 文件上传 > php获取并删除目录及目录下所有的文件实例 - p

php获取并删除目录及目录下所有的文件实例 - p

分享到:
【字体:
导读:
          用php程序删除目录和文件比到ftp删除有很多优势,首先进ftp就比较麻烦,然后删除大量文件的时候ftp删除很慢,还有就是程序只想删除文件夹下面的文件,而保留目录结构,可以用php来轻松的实...

php获取并删除目录及目录下所有的文件实例

用php程序删除目录和文件比到ftp删除有很多优势,首先进ftp就比较麻烦,然后删除大量文件的时候ftp删除很慢,还有就是程序只想删除文件夹下面的文件,而保留目录结构,可以用php来轻松的实现,再有比如生成的日志、缓存要清除用程序来完成显然轻松的多.

第一步,PHP获取目录下面所有文件和文件夹,代码如下:

  1.  
  2.  $dir = "D:/";  //要获取的目录 
  3.  
  4.  echo "********** 获取目录下所有文件和文件夹 ***********
    "
  5.  
  6.  //先判断指定的路径是不是一个文件夹 
  7.  
  8.  if (is_dir($dir)){ 
  9.  
  10.   if ($dh = opendir($dir)){ 
  11.  
  12.    while (($file = readdir($dh))!= false){ 
  13.  
  14.     //文件名的全路径 包含文件名 
  15.  
  16.     $filePath = $dir.$file
  17.  
  18.     //获取文件修改时间 
  19.  
  20.     $fmt = filemtime($filePath); 
  21.  
  22.     echo "(".date("Y-m-d H:i:s",$fmt).") ".$filePath."
    "
  23.  
  24.    } 
  25.  
  26.    closedir($dh); 
  27.  
  28.   } 
  29.  
  30.  } 
  31.  
  32. ?> 

第2步,删除目录及目录下所有的文件,代码如下:

  1. function delDirAndFile( $dirName ){  
  2.  
  3.  if ( $handle = opendir( "$dirName" ) ) {  
  4.  
  5.   while ( false !== ( $item = readdir( $handle ) ) ) {  
  6.  
  7.    if ( $item != "." && $item != ".." ) {  
  8.  
  9.      if ( is_dir"$dirName/$item" ) ) {  
  10.  
  11.        delDirAndFile( "$dirName/$item" );  
  12.  
  13.      } else {  
  14.  
  15.        if( unlink( "$dirName/$item" ) )echo "已删除文件: $dirName/$itemn";  
  16.  
  17.      }  
  18.  
  19.     }  
  20.  
  21.    }  
  22.  
  23.   closedir$handle );  
  24.  
  25.   ifrmdir$dirName ) ) echo "成功删除目录: $dirNamen";  
  26.  
  27.  }  
  28.  

第3步,删除目录下面的文件,不删除目录,代码如下:

  1. function delFileUnderDir( $dirName ){  
  2.  
  3.  if ( $handle = opendir( "$dirName" ) ) {  
  4.  
  5.   while ( false !== ( $item = readdir( $handle ) ) ) {  
  6.  
  7.    if ( $item != "." && $item != ".." ) {  
  8.  
  9.     if ( is_dir"$dirName/$item" ) ) {  
  10.  
  11.       delFileUnderDir( "$dirName/$item" );  
  12.  
  13.      } else {  
  14.  
  15.       if( unlink( "$dirName/$item" ) ) echo "已删除文件:$dirName/$itemn";  
  16.  
  17.      }  
  18.  
  19.     }  
  20.  
  21.    }  
  22.  
  23.   closedir$handle );  
  24.  
  25.  }  
  26.  

小结:这个我们先是从获取目录所有所文件与目录开始然后在基础上进行删除操作.

分享到:
php mkdir 创建多级目录实例代码 - php文...
php mkdir 创建多级目录实例代码 先介绍一下 mkdir() 这个函数 mkdir($path,0777,true); 第一个参数:必须,代表要创建的多级目录的路径. 第二个参数:设定目录的权限,默认是 0777,意味着最大可能的访问权. 第三个参数:true表示允许创建多级目录. mkdir($dir,$mode);但是它每次只能创建一...
php 判断目录下是否有文件存在 - php文件...
php 判断目录下是否有文件存在 今天在写上传图片作为封面的时候,为了避免重复的上传封面而导致,封面图片乱设置,就百度出了判断文件夹是否为空的代码.   获取文件夹1的目录,因为函数会获取.和.. 本身和上级目录都显示出来,这样就循环成了1这样的结果也就是文件夹为空,如果循环到2...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……