PHP之简单在线文件管理

来源:互联网 发布:汽车电脑编程语言 编辑:程序博客网 时间:2024/05/26 02:55
filesystem.php 
通过php的目录和文件的相关函数实现某目录下的文件管理。

相关的函数:
opendir — 打开目录句柄
readdir — 从目录句柄中读取条目
filectime — 取得文件的 inode 修改时间
filesize — 取得文件大小
filetype — 取得文件类型
fopen — 打开文件或者 URL
<?php//简单的在线文件管理$path = "./";$filelist=array("filesystem.php");//要过滤掉的文件//一、根据action的信息值,做对应操作switch($_GET['action']){case "del": //删除一个文件unlink($_GET["filename"]);break;case "create": //创建一个文件//1.获取要创建的文件名$filename = trim($path,"/")."/".$_POST["filename"];//2. 判断文件是否已存在if(file_exists($filename)){die("要创建的文件已存在!");}//3. 创建这个文件$f = fopen($filename,"w");fclose($f);break;case 'edit': //编辑文件信息//1. 获取文件名$filename=$_GET["filename"];//2.读取文件的内容:$fileinfo = file_get_contents($filename);break;case 'update': //执行修改文件信息//获取信息:文件名,内容$filename = $_POST["filename"];$content = $_POST["content"];//2. 执行文件内容修改file_put_contents($filename,$content);break; }//二、浏览指定目录下的文件,并使用表格输出//1. path目录信息的过滤,判断path存在,并期是否是个目录if(!file_exists($path) || !is_dir($path)){die($path."目录无效!");}//2. 输出表头信息echo "<h3>{$path}目录下的文件信息<h3>";echo "<h4><a href='filesystem.php?action=add'>创建文件</a></h4>";echo "<table width='600' border='0'>";echo "<tr bgcolor='#cccccc' align='left'>";echo "<th>序号</th><th>名称</th><th>类型</th><th>大小</th><th>创建时间</th><th>操作</th>";echo "</tr>";//3.打开这个目录,并遍历目录下面的所有文件$dir = opendir($path);if($dir){$i=0;//遍历目录中的文件,并输出文件的信息while($f = readdir($dir)){if($f=="." || $f==".." || in_array($f,$filelist)){continue;//跳出本次循环,继续下一次遍历。}$file = trim($path,"/")."/".$f;$i++;echo "<tr>";echo "<td>{$i}</td>";echo "<td>{$f}</td>";echo "<td>".filetype($file)."</td>";echo "<td>".filesize($file)."</td>";echo "<td>".date("Y-m-d H:i:s",filectime($file))."</td>";echo "<td><a href='filesystem.php?filename={$file}&action=del'>删除</a>   <a href='filesystem.php?filename={$file}&action=edit'>修改</a> </td>";echo "</tr>";}closedir($dir); //关闭目录}echo "<tr bgcolor='#cccccc' align='left'><td colspan='6'> </td></tr>";echo "</table>";//三、判断是否需要创建文件表单,若需输出创建文件的表单框。if($_GET['action']=="add"){echo "<br/><br/><form action='filesystem.php?action=create' method='post'>";echo "新建文件:<input type='text' name='filename' size='12'/> ";echo "<input type='submit' value='新建文件'/>";echo "</form>";}//四、判断是否需要编辑文件表单,若需输出创建文件的表单框。if($_GET['action']=="edit"){echo "<br/><br/><form action='filesystem.php?action=update' method='post'>";echo "<input type='hidden' name='filename' value='{$filename}'/>";echo "文件名:{$filename}<br/><br/>";echo "文件内容:<textarea name='content' cols='40' rows='6'>{$fileinfo}</textarea><br/><br/>";echo "<input type='submit' value='执行编辑'/>";echo "</form>";}?> 
1 0
原创粉丝点击