Heim  >  Artikel  >  Backend-Entwicklung  >  php遍历文件夹并实现编辑与删除的代码

php遍历文件夹并实现编辑与删除的代码

WBOY
WBOYOriginal
2016-07-25 08:55:551949Durchsuche
  1. /*
  2. 遍历文件夹; 功能:(a)可删除文件 (b)可编辑文本,网页文件 (c)可删除文件夹,前提是该文件夹为空 (d)可建立文件,文件夹,修改文件夹名称;
  3. */
  4. $path=$DOCUMENT_ROOT;
  5. $path=str_replace("/","\\",$path);
  6. //指定文件夹
  7. $path=$path."\\";
  8. if($_GET['folder'])
  9. {
  10. $path.=$_GET['folder']."\\";
  11. }
  12. //本页面路径,下面传回时将用到;
  13. $url=$_SERVER['PHP_SELF'];
  14. //如果是文件夹,将加上链接;
  15. function folder($path,$str)
  16. {
  17. if(filetype($path.$str)=="dir")
  18. {
  19. return "$str";
  20. }else{
  21. return $str;
  22. }
  23. }
  24. switch($_GET['action'])
  25. {
  26. case "del";
  27. if($_GET['type']=="file")
  28. {
  29. unlink($_GET['path']);
  30. }else{
  31. rmdir($_GET['path']);
  32. }
  33. echo "";
  34. break;
  35. case "edit";
  36. if($_GET['type']=="file")
  37. {
  38. $file=fopen($_GET['path'],"r");
  39. while(!feof($file))
  40. {
  41. $result.=fgets($file,9999);
  42. }
  43. fclose($file);
  44. echo '
  45. >> 编辑文件 > 返回
    ->文件名:'.$_GET['path'].'
  46. ';
  47. }else{
  48. echo '
  49. >> 新建文件 > 返回
    ->文件夹更名:
  50. ';
  51. }
  52. break;
  53. case "editsave";
  54. $file=fopen($_GET['path'],"w");
  55. fwrite($file,$_POST['textarea']);
  56. fclose($file);
  57. echo "";
  58. break;
  59. case "addfile";
  60. echo '
  61. >> 新建文件 > 返回
    ->文件名:
  62. ';
  63. break;
  64. case "filesave";
  65. //包含点则建立文件,否则建立文件夹
  66. if(strpos($_POST['filename'],"."))
  67. {
  68. $file=fopen($_POST['filename'],"w");
  69. fwrite($file,$_POST['textarea']);
  70. fclose($file);
  71. }else{
  72. //文件夹若存在则退出,不存在则建立!
  73. if(file_exists($_POST['filename']))
  74. {
  75. exit;
  76. }else{
  77. mkdir($_POST['filename']);
  78. }
  79. }
  80. echo "";
  81. break;
  82. case "dir_rename";
  83. rename($_GET['path'],$_POST['filename']);
  84. echo "";
  85. break;
  86. default:
  87. $s=explode("\n",trim(`dir/b/o:gn $path`));
  88. echo '
  89. ';
  90. foreach($s as $value)
  91. {
  92. echo '
  93. ';
  94. }
  95. echo "
  96. >> 文件管理 > 建立文件 > 返回
    文件/文件夹 文件属性 文件大小 操作
    '.folder($path,$value).' '.filetype($path.$value).' '.round(filesize($path.$value)/1024).'kb 编辑 | 删除
    ";
  97. break;
  98. }
  99. ?>
复制代码


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn