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

PHP 读取目录,删除

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-09 11:31:11 浏览: 评论:0 

本文章提供一款php目录管理程序,他可以对目录下的文件,文件夹,等各种文件进行管理删除操作,可以支持无限级目录的管理,代码如下:

  1. <?php 
  2. include("class.php"); 
  3. $path = $_get['path']; 
  4. if($path == ""){ 
  5.  $path = "dir";  
  6. }else{ 
  7.  if(!strstr($path,"dir")){ 
  8.   $path = "dir/".$path; 
  9.  }else{ 
  10.   $path = $path;  
  11.  } 
  12. } 
  13.  
  14. $newdir = new dirver(); 
  15. $newdir -> setpath($path); 
  16. $newdir -> dirdata(); 
  17. $files = $newdir -> getfiles(); 
  18. $dirs = $newdir -> getdirs(); 
  19. //print_r($files); 
  20. //print_r($dirs); 
  21.  
  22. echo('<link href="style.css" rel="stylesheet" type="text/css" />'); 
  23. $max = 3; 
  24. $j = 0; 
  25. if(count($dirs) == 2){ 
  26. echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>'; 
  27.  print("<td width='33%'><img src='type/dir.png'/>"); 
  28.  print('<a href="test.php?path='.$path."/".$dirs[0].'">'); 
  29.  print($dirs[0]); 
  30.  print('</a>'); 
  31.  print("</td>"); 
  32.  print("<td width='33%'><img src='type/dir.png'/>"); 
  33.  print('<a href="test.php?path='.$path."/".$dirs[1].'">'); 
  34.  print($dirs[1]); 
  35.  print('</a>'); 
  36.  print("</td>"); 
  37.  print("<td width='33%'>"); 
  38.  print("&nbsp;&nbsp;"); 
  39.  print("</td>"); 
  40.  echo '</tr></table>'; 
  41. }else{ 
  42. echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>'; 
  43. while($j <= (count($dirs) -1)){ 
  44.  print("<td ><img src='type/dir.png'/>"); 
  45.  print('<a href="test.php?path='.$path."/".$dirs[$j].'">'); 
  46.  print($dirs[$j]); 
  47.  print('</a>'); 
  48.  print("</td>"); 
  49.  if(($j + 1) % $max == 0){ 
  50.    echo '</tr>'; 
  51.    if(($j + 1) != count($dirs)){ 
  52.     echo '<tr>'; 
  53.      } 
  54.   } 
  55.   $j++; 
  56.  }  
  57.  echo '</tr></table>'; 
  58. } 
  59. $i = 0; 
  60. if(count($files) == 2){ 
  61. echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>'; 
  62.  print("<td width='33%'><img src='type/".$newdir -> getfiletype($files[0]).".png'/>&nbsp;"); 
  63.  print($newdir -> change2line($files[0])); 
  64.  print("</td>"); 
  65.  print("<td width='33%'><img src='type/".$newdir -> getfiletype($files[1]).".png'/>&nbsp;"); 
  66.  print($newdir -> change2line($files[1])); 
  67.  print("</td>"); 
  68.  print("<td width='33%'>"); 
  69.  print("&nbsp;&nbsp;"); 
  70.  print("</td>"); 
  71.  echo '</tr></table>'; 
  72. }else{ 
  73. echo'<table width="800" border="0" cellpadding="5" cellspacing="5"><tr>'; 
  74. while($i <= (count($files) -1)){ 
  75.  print("<td width=100><img src='type/".$newdir -> getfiletype($files[$i]).".png'/>&nbsp;"); 
  76.  print($newdir -> change2line($files[$i]));  
  77.  print("</td>");//开源代码phpfensi.com 
  78.  if(($i + 1) % 3 == 0){ 
  79.    echo '</tr>'; 
  80.    if(($i + 1) != count($files)){ 
  81.     echo '<tr>'; 
  82.     } 
  83.  } 
  84.  
  85.  $i++; 
  86. }  
  87.  echo '</tr></table>'; 
  88. } 
  89. ?> 

class.php,代码如下:

  1. <?php 
  2.   class for php4.x 
  3.  class  dirver{ 
  4.   /class var/ 
  5.   var $path; 
  6.   var $flies; 
  7.   var $dirs; 
  8.   / 
  9.   function dirver(){ 
  10.    $this -> path = "";  
  11.    $this -> files = array(); 
  12.    $this -> dirs = array(); 
  13.   } 
  14.    
  15.   function dirdata(){ 
  16.    if(isset($this -> path)){ 
  17.     $handle = dir($this -> path); 
  18.     while(false !== ($data = $handle -> read())){ 
  19.      if(is_dir($this -> connectname($this -> path,$data)) && $data != "." && $data != ".."){ 
  20.        $this -> dirs[] = $data; 
  21.        continue; 
  22.       } 
  23.        
  24.      if($data != "." && $data != ".." && is_file($this -> connectname($this -> path,$data))){ 
  25.        $this -> files[] = $data; 
  26.        continue; 
  27.       } 
  28.       
  29.     } 
  30.     $handle -> close();  
  31.    }else{ 
  32.     return false;  
  33.    } 
  34.   } 
  35.    
  36.  function setpath($src){ 
  37.    if($src != ""){ 
  38.     $this -> path = $src;  
  39.    }else{ 
  40.     return false;  
  41.    } 
  42.   } 
  43.  / 
  44.  function connectname($path,$name){ 
  45.   return $path."/".$name; 
  46.  } 
  47.  / 
  48.  function change2line($name){ 
  49.   $basename = explode(".",$name); 
  50.   $basename = $basename[0]; 
  51.   $tmp = $this -> path."/".$name; 
  52.   $tmp = '<a href="'.$tmp.'" target="_blank">'.$basename.'</a>'; 
  53.   return $tmp;  
  54.  } 
  55.  
  56.  function getfiletype($file){ 
  57.   if($file != ""){ 
  58.    $tmp = explode(".",$file); 
  59.    $type = $tmp[count($tmp)-1]; 
  60.    return $type;  
  61.   } 
  62.  } 
  63.  
  64.  
  65.  function getfiles(){ 
  66.   return $this -> files; 
  67.   } 
  68.  
  69.  function getdirs(){ 
  70.   return $this -> dirs;  
  71.   } 
  72.  // 
  73.  } 
  74.  
  75.  
  76. ?> 

Tags: PHP读取目录 PHP删除目录

分享到: