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 }
时间: 2024-10-11 10:59:45

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

简单的在线文件管理(增删改操作)

分享:简单的--当前目录下的在线文件管理操作.其中包含了文件的在线浏览,删除.创建和修改等功能 用到的一些函数: opendir - 打开目录句柄 readdir - 从目录句柄中读取条目 filectime - 取得文件的 inode 修改时间 filesize - 取得文件大小 filetype - 取得文件类型 fopen - 打开文件或者 URL 以下是具体代码(将代码自己复制下来就可以的哇): <?php //简单的在线文件管理 $path = "./"; $filel

一个简单且丑陋的js切换背景图片基础示例

不多说,直接上代码,非常基础的一个原生js切换元素背景图片范例 <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <title>原生JS范例</title> <script type="text/javascript"> function changeBg()

ios开发UI基础—Kvc简单介绍

一.KVC简单介绍 KVC key valued coding 键值编码 KVC通过键值间接编码 补充: 与KVC相对的时KVO,即key valued observer 键值观察.监听某一个模型的属性,只要模型属性的值一变化就通知你. 二.使用KVC 1.KVC基本使用介绍 (1)代码示例: 新建一个命令行项目,用以演示KVC的用法 完成之后为项目添加一个Person类. 为Person类添加两个属性(name和age),注意这两个属性的类型. 1 #import <Foundation/Fo

C#基础知识简单梳理

C#基础知识简单梳理 本文是转发博友的总结,方便自己以后随时温习: 1.值类型和引用类型 1.1堆和栈 简单的说值类型存放在堆栈上面,引用类型的数据存放在托管堆上面(它的引用地址却存放在堆栈上面)! 栈:它是一个内存数组,是一个先进后出的数据结构! 栈的特征:数据只能从栈顶进,从栈顶出! 堆:它是一个内存区域,可以分配大块区域存储某类型的数据,与栈不同的是它里面的数据可以任意排序和移除! 下面是园子的一张图,贴上来供大家参考啊! 问     题 值  类  型 引 用 类 型 这个类型分配在哪里

SpringMVC 基础教程 简单入门实例

SpringMVC 基础教程 简单入门实例 标签: Spring MVCspringmvcSpringMVC教程基础教程SpringMVC实例 2013-05-09 13:44 170403人阅读 评论(69) 收藏 举报  分类: Java(23)  Spring框架(3)  版权声明:本文为博主原创文章,未经博主允许不得转载. spring MVC 入门教程二: 一个简单的入门实例教程 该实例的源码和实例中的jar 源码:http://download.csdn.net/detail/swi

php小项目-web在线文件管理器

php小项目-web在线文件管理器 一 项目结果相关视图 二 项目经验 通过简单的实现小项目,对php的文件相关操作更加熟悉,主要用于熟悉文件的相关操作 三 源代码下载地址 http://files.cnblogs.com/files/qiujun/fileManager.zip

[转]Membership三步曲之入门篇 - Membership基础示例

本文转自:http://www.cnblogs.com/jesse2013/p/membership.html Membership三步曲之入门篇 - Membership基础示例 Membership 三步曲之入门篇 - Membership基础示例 Membership三步曲之入门篇 -  Membership基础示例 Membership三步曲之进阶篇 -  深入剖析Provider model Membership三步曲之高级篇 -  从Membership 到 .NET 4.5 之 A

开源作品-PHP写的在线文件管理工具(单文件绿色版)-SuExplorer_PHP_2_0

前言:项目开发过程中,网站一般部署到远程服务器,所以文件管理就不能和本机操作一样方便.通常文件管理是用ftp下载到本地,修改后再上传,或者远程登录到服务器进行修改.但是这些操作都依赖于复杂的第三方软件.如果只是想简单修改网站中一个页面中的文字,或查看文件代码,相对于繁琐的使用第三方软件进行操作的流程,如果有一个小程序能在线操作文件,那就能方便快速达到自己的需求了.所以,SuExplorer就是在这样的需求中被开发出来.秉承自己开发的小工具一贯的风格,首先是要尽可能绿色单文件,尽量不依赖其他文件,

C# 在线文件管理模块,笔记(1)

在线文件管理没款功能及应用. 现在企业级开发中,在线文档管理是必不可少模块之一,本例所讲在线文档管理没款包括了文件上传到服务器上,文件浏览,重命名,移动,复制,删除,新建文件夹,压缩,解压缩,在线编辑等多种常用操作,适用于无纸化办公OA,ERP,CRM,项目管理,文件管理(网盘),主机管理等多种场合. 在线文件管理模块特点 全静态页面,执行效率高 使用Ajax技术,用户体验好 界面美观,全新对话框 操作简便,一个页面完成所有操作 纯div布局,代码简便控制,难度高 纯手工代码,功能扩展容易 抛弃