php實(shí)現(xiàn)的遍歷文件夾下所有文件,編輯刪除
更新時(shí)間:2010年01月05日 23:28:21 作者:
遍歷文件夾; 功能:(a)可刪除文件 (b)可編輯文本,網(wǎng)頁(yè)文件 (c)可刪除文件夾,前提是該文件夾為空 (d)可建立文件,文件夾,修改文件夾名稱
復(fù)制代碼 代碼如下:
<?php
/*
遍歷文件夾; 功能:(a)可刪除文件 (b)可編輯文本,網(wǎng)頁(yè)文件 (c)可刪除文件夾,前提是該文件夾為空 (d)可建立文件,文件夾,修改文件夾名稱;
lost63.com原創(chuàng), 轉(zhuǎn)載請(qǐng)注明出處. 交流QQ:35501547
*/
$path=$DOCUMENT_ROOT;
$path=str_replace("/","\\",$path);
//指定文件夾
$path=$path."\\";
if($_GET['folder'])
{
$path.=$_GET['folder']."\\";
}
//本頁(yè)面路徑,下面?zhèn)骰貢r(shí)將用到;
$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">輸入內(nèi)容
</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";
//包含點(diǎn)則建立文件,否則建立文件夾
if(strpos($_POST['filename'],"."))
{
$file=fopen($_POST['filename'],"w");
fwrite($file,$_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;
}
?>
您可能感興趣的文章:
- php遍歷目錄與文件夾的多種方法詳解
- PHP遍歷某個(gè)目錄下的所有文件和子文件夾的實(shí)現(xiàn)代碼
- 使用PHP遍歷文件夾與子目錄的函數(shù)代碼
- php 遍歷顯示文件夾下所有目錄、所有文件的函數(shù),沒(méi)有分頁(yè)的代碼
- php實(shí)現(xiàn)遍歷文件夾的方法匯總
- PHP自動(dòng)重命名文件實(shí)現(xiàn)方法
- PHP實(shí)現(xiàn)批量重命名某個(gè)文件夾下所有文件的方法
- 6種php上傳圖片重命名的方法實(shí)例
- 基于php上傳圖片重命名的6種解決方法的詳細(xì)介紹
- PHP實(shí)現(xiàn)讀取文件夾及批量重命名文件操作示例
相關(guān)文章
php使用memcoder將視頻轉(zhuǎn)成mp4格式的方法
這篇文章主要介紹了php使用memcoder將視頻轉(zhuǎn)成mp4格式的方法,涉及php操作視頻文件的技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-03-03
WordPress遷移時(shí)一些常見(jiàn)問(wèn)題的解決方法整理
這篇文章主要介紹了WordPress遷移時(shí)一些常見(jiàn)問(wèn)題的解決方法整理,包括通過(guò)一個(gè)推薦的方法來(lái)備份插件以避免遷移后的更多問(wèn)題出現(xiàn),需要的朋友可以參考下2015-11-11
攻克CakePHP系列一 連接MySQL數(shù)據(jù)庫(kù)
請(qǐng)先參閱以前寫的文章以便對(duì)CakePHP有所了解文章,上一篇2008-10-10
PHP實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建XML文檔的方法
這篇文章主要介紹了PHP實(shí)現(xiàn)動(dòng)態(tài)創(chuàng)建XML文檔的方法,結(jié)合實(shí)例形式分析了php針對(duì)xml格式數(shù)據(jù)的構(gòu)建及文件讀寫相關(guān)操作技巧,需要的朋友可以參考下2018-03-03
php中ob_get_length緩沖與獲取緩沖長(zhǎng)度實(shí)例
這篇文章主要介紹了php中ob_get_length緩沖與獲取緩沖長(zhǎng)度的方法,實(shí)例分析了緩沖輸出的用法與相關(guān)技巧,具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2014-11-11
PHP5.2中date()函數(shù)顯示時(shí)間與北京時(shí)間相差8小時(shí)的解決辦法
北京時(shí)間是東8區(qū),可能是時(shí)區(qū)問(wèn)題.但是此前都沒(méi)問(wèn)題啊,經(jīng)過(guò)google發(fā)現(xiàn)原來(lái)從php5.1.0開(kāi)始,php.ini里加入了 date.timezone這個(gè)選項(xiàng),默認(rèn)情況下是關(guān)閉的2009-05-05

