当前位置:首页 > PHP教程 > php文件操作 > 列表

php删除文件夹/目录下所文件(包含目录)

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-19 08:45:01 浏览: 评论:0 

以前有介绍过一个删除指定目录下的指定文件下面我们来看删除指定目录所的所有文件只删除一级目录不删除下级目录,具体程序例子如下:

  1. public function del(){ 
  2.     header("Content-Type: text/html; charset=UTF-8"); 
  3.     echo '点击文件名可以查看:<br>'
  4.     $dir =getcwd()."/html/"
  5.     //获取某目录下所有文件、目录名(不包括子目录下文件、目录名) 
  6.     $handler = opendir($dir); 
  7.     while (($filename = readdir($handler)) !== false) {//务必使用!==,防止目录下出现类似文件名“0”等情况 
  8.         if ($filename != "." && $filename != "..") { 
  9.                 $files[] = $filename ; 
  10.            } 
  11.        } 
  12.      
  13.     closedir($handler); 
  14.        
  15. //打印所有文件名 
  16. foreach ($files as $value) { 
  17.     $url = 'http://'.$_SERVER['HTTP_HOST']."/html/".$value
  18.     echo "<a href='".$url."' target='_blank'>".$value."</a> | <a href='/index.php?s=/Index1/dodel/name/".$value."' target='_self'>删除</a><br />"
  19.       
  20.  
  21. public function dodel(){ 
  22.     header("Content-Type: text/html; charset=UTF-8"); 
  23.     $fname = $this->_get("name"); 
  24.     $fname = getcwd()."/html/".$fname.".html"
  25.     if(unlink($fname)){ 
  26.           
  27.         echo $fname.' 文件删除成功!<a href="javascript:history.go(-1);">返回</a>';   
  28.     }else
  29.         echo $fname.' 删除失败!<a href="javascript:history.go(-1);">返回</a>'
  30.     } 

获取目录下所有文件,包括子目录,代码如下:

  1. function get_allfiles($path,&$files) { 
  2.     if(is_dir($path)){ 
  3.         $dp = dir($path); 
  4.         while ($file = $dp ->read()){ 
  5.             if($file !="." && $file !=".."){ 
  6.                 get_allfiles($path."/".$file$files); 
  7.             } 
  8.         } 
  9.         $dp ->close(); 
  10.     } 
  11.     if(is_file($path)){ 
  12.         $files[] =  $path
  13.     } 
  14.      
  15. function get_filenamesbydir($dir){ 
  16.     $files =  array(); 
  17.     get_allfiles($dir,$files); 
  18.     return $files
  19.      
  20. $filenames = get_filenamesbydir("static/image/"); 
  21. //打印所有文件名,包括路径 
  22. foreach ($filenames as $value) { 
  23.     echo $value."<br />"
  24. }  

php删除文件夹及其文件夹下所有文件,代码如下:

  1. function deldir($dir) { 
  2.   //先删除目录下的文件: 
  3.   $dh=opendir($dir); 
  4.   while ($file=readdir($dh)) { 
  5.     if($file!="." && $file!="..") { 
  6.       $fullpath=$dir."/".$file
  7.       if(!is_dir($fullpath)) { 
  8.           unlink($fullpath); 
  9.       } else { 
  10.           deldir($fullpath); 
  11.       } 
  12.     } 
  13.   } 
  14.    
  15.   closedir($dh); 
  16.   //删除当前文件夹: 
  17.   if(rmdir($dir)) { 
  18.     return true; 
  19.   } else { 
  20.     return false; 
  21.   } 

Tags: php删除文件夹 php删除目录

分享到: