PHP基础示例:简单的在线文件管理

先截个图:

下面为代码部分,由于只有一个文件,所以就不折叠了。

  1 <?php
  2 //简单的在线文件管理
  3 
  4 $path = "./";
  5 $filelist=array("filesystem.php");//要过滤掉的文件
  6 
  7 //一、根据action的信息值,做对应的操作
  8 switch(@$_GET['action'])
  9 {
 10     case "del": //删除一个文件
 11         unlink($_GET["filename"]);
 12         break;
 13     case "create": //创建一个文件
 14         //1.获取要创建的文件名
 15         $filename = trim($path,"/")."/".$_POST["filename"];
 16         //2.判断文件是否已存在
 17         if(file_exists($filename))
 18         {
 19             die("要创建的文件已存在!");
 20         }
 21         //3.创建这个文件
 22         $f = fopen($filename,"w");
 23         fclose($f);
 24         break;
 25         
 26     case "edit":  //编辑文件信息
 27         //1.获取文件名
 28         $filename=$_GET["filename"];
 29         //2.读取文件的内容
 30         $fileinfo= file_get_contents($filename);
 31         break;
 32     case "update": //修改文件信息
 33         //1.获取信息:文件名,内容
 34         $filename = $_POST["filename"];
 35         $content = $_POST["content"];
 36         //2.执行文件内容修改
 37         file_put_contents($filename,$content);
 38         break;
 39 }
 40 
 41 //二、浏览指定目录下的文件
 42 
 43     //1.判断path存在,并且是否是个目录
 44     if(! file_exists($path) && is_dir($path))
 45     {
 46         die($path."目录无效!");
 47     }
 48     //2.输出表头信息
 49     echo "<h3>{$path}目录下的文件信息<h3>";
 50     echo "<h4><a href='filesystem.php?action=add'>创建文件</a></h4>";
 51     echo "<table width='600' border='0'>";
 52     echo "<tr bgcolor='#cccccc' align='left'>";
 53         echo "<th>序号</th><th>名称</th><th>类型</th><th>大小</th><th>创建时间</th><th>操作</th>";
 54     echo "</tr>";
 55     
 56     //3.打开这个目录并遍历目录下面的所有文件
 57     $dir = opendir($path);
 58     if($dir)
 59     {
 60         $i=0;
 61         //遍历目录中的文件,并输出文件的信息
 62         while($f = readdir($dir))
 63         {
 64             if($f=="." || $f==".." || in_array($f,$filelist))
 65             {
 66                 continue;//跳出本次循环,继续下一次遍历
 67             }
 68             $file = trim($path,"/")."/".$f;
 69             $i++;
 70             echo "<tr>";
 71             echo "<td>{$i}</td>";
 72             echo "<td>{$f}</td>";
 73             echo "<td>".filetype($file)."</td>";
 74             echo "<td>".filesize($file)."</td>";
 75             echo "<td>".date("Y-m-d H:i:s",filectime($file))."</td>";
 76             echo "<td><a href='filesystem.php?filename={$file}&action=del'>删除</a>
 77                       <a href='filesystem.php?filename={$file}&action=edit'>修改</a>
 78                 
 79                   </td>";
 80             echo "</tr>";
 81         }
 82         closedir($dir);//关闭目录
 83     }
 84     echo "<tr bgcolor='#cccccc' align='left'><td colspan='6'>&nbsp;</td></tr>";
 85     echo "</table>";
 86     
 87 //三、判断是否需要文件表单,若需输出创建文件的表单框
 88 if(@$_GET['action']=="add")
 89 {
 90     echo "<br/><br/><form action='filesystem.php?action=create' method='post'>";
 91     echo "新建文件: <input type='text' name='filename' size='12'/>";
 92     echo "<input type='submit' value='新建文件'>";
 93     echo "</form>";
 94 }
 95 
 96 //四、判断是否需要编辑文件表单,若需输出创建文件的表单框
 97 if(@$_GET['action']=="edit")
 98 {
 99     echo "<br/><br/><form action='filesystem.php?action=update' method='post'>";
100     echo "<input type='hidden' name='filename' value='{$filename}'/> ";
101     echo "文件名: {$filename}<br/><br/>";
102     echo "文件内容:<textarea name='content' cols='40' row='6'>{$fileinfo}</textarea><br/>";
103     echo "<input type='submit' value='执行编辑'>";
104     echo "</form>";
105 }

 

posted @ 2015-06-02 22:52  怪盗dark  阅读(963)  评论(0编辑  收藏  举报