Rumah  >  Artikel  >  pembangunan bahagian belakang  >  php遍历文件夹并实现编辑与删除的代码

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

WBOY
WBOYasal
2016-07-25 08:55:551950semak imbas
  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. ?>
复制代码


Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn