加入收藏 | 设为首页 | 会员中心 | 我要投稿 汽车网 (https://www.0577qiche.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 教程 > 正文

php实现的遍历文件夹下所有文件,编辑删除

发布时间:2023-03-07 13:31:28 所属栏目:教程 来源:
导读:<?PHP

/*

遍历文件夹; 功能:(a)可删除文件 (b)可编辑文本,网页文件 (c)可删除文件夹,前提是该文件夹为空 (d)可建立文件,文件夹,修改文件夹名称;

lost63.com原创,转载请注明出处. 交流QQ:35501547

*/

<?PHP 

/* 

遍历文件夹; 功能:(a)可删除文件 (b)可编辑文本,网页文件 (c)可删除文件夹,前提是该文件夹为空 (d)可建立文件,文件夹,修改文件夹名称; 

lost63.com原创,转载请注明出处. 交流QQ:35501547 

*/ 

$path=$DOCUMENT_ROOT; 

$path=str_replace("/","\",$path); 

//指定文件夹 

$path=$path."\"; 

if($_GET['folder']) 



$path.=$_GET['folder']."\"; 



//本页面路径,下面传回时将用到; 

$url=$_SERVER['PHP_SELF']; 

//如果是文件夹,将加上链接; 

function folder($path,$str) 



if(filetype($path.$str)=="dir") 



return "<a href="?folder=".$_GET['folder']."\".$str."">$str</a>"; 

}else{ 

return $str; 





switch($_GET['action']) 



case "del"; 

if($_GET['type']=="file") 



unlink($_GET['path']); 

}else{ 

rmdir($_GET['path']); 



echo "<script type="text/javascript">alert('恭喜,删除成功!');location.href="".$url."";</script>"; 

break; 

case "edit"; 

if($_GET['type']=="file") 



$file=fopen($_GET['path'],"r"); 

while(!feof($file)) 



$result.=fgets($file,9999); 



fclose($file); 

echo '<form name="form1" method="post" action="?action=editsave&path='.$_GET['path'].'&type='.$_GET['type'].'"> 

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> 

<tr> 

<td height="25" bgcolor="#99CC00">>><strong> 编辑文件</strong> > <a href="'.$url.'">返回</a></td> 

</tr> 

<tr> 

<td height="25" align="left" bgcolor="#FFFFCC">->文件名:'.$_GET['path'].'</td> 

</tr> 

<tr> 

<td align="center" bgcolor="#FFFFFF"><textarea name="textarea" cols="135" rows="20">'.$result.'</textarea></td> 

</tr> 

<tr> 

<td align="center" bgcolor="#FFFFFF"><input type="submit" name="Submit" value="提交"> 

<input type="reset" name="Submit2" value="重置"></td> 

</tr> 

</table> 

</form>'; 

}else{ 

echo '<form name="form1" method="post" action="?action=dir_rename&path='.$_GET['path'].'&type='.$_GET['type'].'"> 

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> 

<tr> 

<td height="25" bgcolor="#99CC00">>><strong> 新建文件</strong> > <a href="'.$url.'">返回</a></td> 

</tr> 

<tr> 

<td height="25" align="left" bgcolor="#FFFFCC">->文件夹更名: 

<input name="filename" type="text" value="'.$_GET['path'].'" size="50"></td> 

</tr> 

<tr> 

<td align="center" bgcolor="#FFFFFF"><input type="submit" name="Submit" value="提交"> 

<input type="reset" name="Submit2" value="重置"></td> 

</tr> 

</table> 

</form>'; 



break; 

case "editsave"; 

$file=fopen($_GET['path'],"w"); 

fwrite($file,$_POST['textarea']); 

fclose($file); 

echo "<script type="text/javascript">alert('恭喜,编辑成功!');location.href="".$url."";</script>"; 

break; 

case "addfile"; 

echo '<form name="form1" method="post" action="?action=filesave&path='.$_GET['path'].'"> 

<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> 

<tr> 

<td height="25" bgcolor="#99CC00">>><strong> 新建文件</strong> > <a href="'.$url.'">返回</a></td> 

</tr> 

<tr> 

<td height="25" align="left" bgcolor="#FFFFCC">->文件名: 

<input name="filename" type="text" value="'.$_GET['path'].'" size="50"></td> 

</tr> 

<tr> 

<td align="center" bgcolor="#FFFFFF"><textarea name="textarea" cols="135" rows="20">输入内容 

</textarea></td> 

</tr> 

<tr> 

<td align="center" bgcolor="#FFFFFF"><input type="submit" name="Submit" value="提交"> 

<input type="reset" name="Submit2" value="重置"></td> 

</tr> 

</table> 

</form>'; 

break; 

case "filesave"; 

//包含点则建立文件,否则建立文件夹 

if(strpos($_POST['filename'],".")) 



$file=fopen($_POST['filename'],$_POST['textarea']); 

fclose($file); 

}else{ 

//文件夹若存在则退出,不存在则建立! 

if(file_exists($_POST['filename'])) 



exit; 

}else{ 

mkdir($_POST['filename']); 





echo "<script type="text/javascript">alert('恭喜,".$_POST['filename']."建立成功!');location.href="".$url."";</script>"; 

break; 

case "dir_rename"; 

rename($_GET['path'],$_POST['filename']); 

echo "<script type="text/javascript">alert('恭喜,".$_POST['filename']."改名成功!');location.href="".$url."";</script>"; 

break; 

default: 

$s=explode("n",trim(`dir/b/o:gn $path`)); 

echo '<table width="100%" border="0" cellpadding="0" cellspacing="1" bgcolor="#CCCCCC"> 

<tr> 

<td height="25" colspan="4" bgcolor="#99CC00">>><strong> 文件管理</strong> > <a href="?action=addfile&path='.$path.'">建立文件</a> > <a href="'.$url.'">返回</a></td> 

</tr> 

<tr> 

<td height="25" align="center" bgcolor="#FFFFCC">文件/文件夹</td> 

<td align="center" bgcolor="#FFFFCC">文件属性</td> 

<td align="center" bgcolor="#FFFFCC">文件大小</td> 

<td align="center" bgcolor="#FFFFCC">操作</td> 

</tr>'; 

foreach($s as $value) 



echo ' 

<tr> 

<td height="25" bgcolor="#FFFFFF">'.folder($path,$value).'</td> 

<td align="center" bgcolor="#FFFFFF">'.filetype($path.$value).'</td> 

<td align="right" bgcolor="#FFFFFF">'.round(filesize($path.$value)/1024).'kb</td> 

<td align="center" bgcolor="#FFFFFF"><a href="?action=edit&path='.$path.'\'.$value.'&type='.filetype($path.$value).'">编辑</a> | <a href="?action=del&path='.$path.'\'.$value.'&type='.filetype($path.$value).'" onClick="return confirm('确定删除->'.$value.'');">删除</a></td> 

</tr>'; 



echo "</table>"; 

break; 



?>

 

(编辑:汽车网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章