首頁 後端開發 php教程 PHP操作檔案類

PHP操作檔案類

Jul 25, 2016 am 09:11 AM

本类为文件操作类,实现了文件的建立,写入,删除,修改,复制,移动,创建目录,删除目录
  1. <?php
  2. /**
  3. *本类为文件操作类,实现了文件的建立,写入,删除,修改,复制,移动,创建目录,删除目录
  4. * 列出目录里的文件等功能,路径后面别忘了加"/"
  5. *
  6. * @author 路人郝
  7. * @copyright myself
  8. * @link www.phpr.cn
  9. *
  10. */
  11. class fileoperate
  12. {
  13. var path;// 文件路径
  14. var name;//文件名
  15. var result;//对文件操作后的结果
  16. /**
  17. * 本方法用来在path目录下创建name文件
  18. *
  19. * @param string path
  20. * @param string name
  21. */
  22. function creat_file(path,name)//建立文件
  23. {
  24. filename=path.name;
  25. if (file_exists(filename))
  26. {
  27. echo "文件已经存在,请换个文件名";
  28. }
  29. else
  30. {
  31. if (file_exists(path))
  32. {
  33. touch(name);
  34. rename(name,filename);
  35. echo "文件建立成功 </br>";
  36. }
  37. else{
  38. echo "目录不存在,请检查";
  39. }
  40. }
  41. }
  42. /**
  43. * 本方法用来写文件,向path路径下name文件写入content内容,bool为写入选项,值为1时
  44. * 接着文件原内容下继续写入,值为2时写入后的文件只有本次content内容
  45. *
  46. * @param string_type path
  47. * @param string_type name
  48. * @param string_type content
  49. * @param bool_type bool
  50. */
  51. function write_file(path,name,content,bool) //写文件
  52. {
  53. filename=path.name;
  54. if (bool==1) {
  55. if (is_writable(filename)) {
  56. handle=fopen(filename,'a');
  57. if (!handle) {
  58. echo "文件不能打开或文件不存在";
  59. exit;
  60. }
  61. result=fwrite(handle,content);
  62. if (!result) {
  63. echo "文件写入失败";
  64. }
  65. echo "文件写入成功";
  66. fclose(handle);
  67. }
  68. else echo "文件不存在";
  69. }
  70. if (bool==2) {
  71. if (!file_exists(filename)) {
  72. this->creat_file(path,name);
  73. handle=fopen(filename,'a');
  74. if (fwrite(handle,content));
  75. echo "文件写入成功";
  76. }
  77. else {
  78. unlink(filename);
  79. this->creat_file(path,name);
  80. this->write_file(path,name,content,1);
  81. echo "文件修改成功";
  82. }
  83. }
  84. }
  85. /**
  86. * 本方法删除path路径下name文件
  87. *
  88. * @param string_type path
  89. * @param string_type name
  90. */
  91. function del_file(path,name){ //删除文件
  92. filename=path.name;
  93. if (!file_exists(filename)) {
  94. echo "文件不存在,请确认路径是否正确";
  95. }
  96. else {
  97. if (unlink(filename)){
  98. echo "文件删除成功";
  99. }
  100. else echo "文件删除失败";
  101. }
  102. }
  103. /**
  104. * 本方法用来修改path目录里name文件中的内容(可视)
  105. *
  106. * @param string_type path
  107. * @param string_type name
  108. */
  109. function modi_file(path,name){ //文件修改
  110. filename=path.name;
  111. handle=fopen(filename,'r+');
  112. content=file_get_contents(filename);
  113. echo "<form id='form1' name='form1' action='modi_file.php' method='post'>";
  114. echo "<textarea name=content rows='10'>content</textarea>文件内容";
  115. echo "<p>";
  116. echo "<input type='text' name='filename' value=filename />文件路径<p>";
  117. echo "<input name=ss type=submit value=修改文件内容 />";
  118. echo "</form>";
  119. }
  120. /**
  121. * 本方法用来复制name文件从spath到dpath
  122. *
  123. * @param string name
  124. * @param string spath
  125. * @param string dpath
  126. */
  127. function copy_file(name,spath,dpath) //文件复制
  128. {
  129. filename=spath.name;
  130. if (file_exists(filename)) {
  131. handle=fopen(filename,'a');
  132. copy(filename,dpath.name);
  133. if (file_exists(dpath.name))
  134. echo "文件复制成功";
  135. else echo "文件复制失败";
  136. }
  137. else echo "文件不存在";
  138. }
  139. /**
  140. * 本方法把name文件从spath移动到path路径
  141. *
  142. * @param string_type path
  143. * @param string_type dirname
  144. * @param string_type dpath
  145. */
  146. function move_file(name,spath,dpath) //移动文件
  147. {
  148. filename=spath.name;
  149. if (file_exists(filename)) {
  150. result=rename(filename,dpath.name);
  151. if (result==false or !file_exists(dpath))
  152. echo "文件移动失败或目的目录不存在";
  153. else
  154. echo "文件移动成功";
  155. }
  156. else {
  157. echo "文件不存在,无法移动";
  158. }
  159. }
  160. }
  161. ?>
复制代码


本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章

兩個點博物館:邦格荒地地點指南
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章

兩個點博物館:邦格荒地地點指南
4 週前 By 尊渡假赌尊渡假赌尊渡假赌
倉庫:如何復興隊友
3 週前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前 By 尊渡假赌尊渡假赌尊渡假赌

熱門文章標籤

記事本++7.3.1

記事本++7.3.1

好用且免費的程式碼編輯器

SublimeText3漢化版

SublimeText3漢化版

中文版,非常好用

禪工作室 13.0.1

禪工作室 13.0.1

強大的PHP整合開發環境

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

11個最佳PHP URL縮短腳本(免費和高級) 11個最佳PHP URL縮短腳本(免費和高級) Mar 03, 2025 am 10:49 AM

11個最佳PHP URL縮短腳本(免費和高級)

在Laravel中使用Flash會話數據 在Laravel中使用Flash會話數據 Mar 12, 2025 pm 05:08 PM

在Laravel中使用Flash會話數據

6個額外的技能,每個PHP開發人員都應該擁有 6個額外的技能,每個PHP開發人員都應該擁有 Feb 28, 2025 am 10:52 AM

6個額外的技能,每個PHP開發人員都應該擁有

了解PHP中的陣列 了解PHP中的陣列 Feb 28, 2025 am 10:53 AM

了解PHP中的陣列

簡化的HTTP響應在Laravel測試中模擬了 簡化的HTTP響應在Laravel測試中模擬了 Mar 12, 2025 pm 05:09 PM

簡化的HTTP響應在Laravel測試中模擬了

構建具有Laravel後端的React應用程序:第2部分,React 構建具有Laravel後端的React應用程序:第2部分,React Mar 04, 2025 am 09:33 AM

構建具有Laravel後端的React應用程序:第2部分,React

php中的捲曲:如何在REST API中使用PHP捲曲擴展 php中的捲曲:如何在REST API中使用PHP捲曲擴展 Mar 14, 2025 am 11:42 AM

php中的捲曲:如何在REST API中使用PHP捲曲擴展

在Codecanyon上的12個最佳PHP聊天腳本 在Codecanyon上的12個最佳PHP聊天腳本 Mar 13, 2025 pm 12:08 PM

在Codecanyon上的12個最佳PHP聊天腳本

See all articles