Maison  >  Article  >  développement back-end  >  PHP 文件的基本操作

PHP 文件的基本操作

WBOY
WBOYoriginal
2016-07-25 08:42:58823parcourir
  1. //文件的基本操作
  2. //fopen()
  3. 打开一个文件
  4. //使用绝对路径打开一个文件,选择只读模式,并返回资源$handle
  5. $handle=fopen("D:/lamp/apache2/htdocs/test/file.txt","r");
  6. //访问文档根目录下的文件,也选择只读模式
  7. $handle=fopen($_SERVER['DOCUMENT_ROOT']."/test/file.txt","r");
  8. //打开远程文件,使用http协议只能以读的方式打开
  9. $handle=fopen("http://www.wowsai.com","r");
  10. //使用FTP协议打开远程文件,如果FTP服务器可写,则可以以写的模式打开
  11. //$handle=fopen("ftp://user:password@example.com/file.txt",'w');
  12. //fclose()
  13. 关闭打开的资源类型
  14. //fwrite()
  15. 向文件中写入内容
  16. $fileName="data.txt";
  17. //声明一个文件的变量
  18. //用只写的方式打开文件,没有则创建,并且在打开失败时通过程序
  19. $f_handle=fopen("data.txt","w")or die("打开".$fileName."文件失败");
  20. for($i=0;$i//通过一个循环,向文件中添入内容
  21. fwrite($f_handle,"again\n");
  22. }
  23. fclose($f_handle);
  24. //关闭打开的文件
  25. //file_put_contents()
  26. 一次将所有数据写入到指定的文件中
  27. //读取文件内容
  28. //fread()
  29. 读取打开的文件
  30. //file_get_contents()
  31. 将文件读入字符串
  32. //fgets()
  33. 从打开的文件中返回一行
  34. //fgetc()
  35. 从打开的文件中返回字符
  36. //file()
  37. 把文件读入一个数组中
  38. //readfile()
  39. 读取一个文件,并输出到输出缓冲
  40. //feof()
  41. 判断一个文件指针是否位于文件的结束处
  42. //从文件中读取指定字节数的内容存入到一个变量中
  43. $fileName2="data.txt";
  44. $f_hand=fopen($fileName2,"r")or die("文件打开失败");
  45. $contents=fread($f_hand,50);
  46. fclose($f_hand);
  47. echo $contents."
    ";
  48. //从文件中读取全部内容存入到一个变量中,每次读取一部分,循环读取
  49. /* $fileName3="D:/lamp/apache2/icons/link.gif";
  50. //将二进制文件的文件名保存到一个变量中
  51. $f3_handle=fopen($fileName3,"rb")or die("文件打开失败"); //以只读的方式打开文件,模式加了"b"
  52. $f3_contents="";
  53. //声明一个用于保存文件内容的字符串
  54. while(!feof($f3_handle)){
  55. //循环读取文件中的内容,知道文件结束
  56. $f3_contents.=fread($f3_handle,1024);
  57. //每次读取1024个字符
  58. }
  59. fclose($f3_handle);
  60. echo $f3_contents; */
  61. //另一种读取文件全部内容的方法
  62. $fileName4="data.txt";
  63. $f4_handle=fopen($fileName4,"r")or die("文件打开失败");
  64. $f4_con=fread($f4_handle,filesize($fileName4));
  65. //用filesize获取文件的长度,这样来读取文件的全部内容
  66. fclose($f4_handle);
  67. echo $f4_con."
    ";
  68. //另一种方法读取文件的全部内容,比上面的性能要好的多
  69. echo file_get_contents("data.txt");
  70. $f5_handle=fopen("data.txt","r") or die("文件打开失败");
  71. while(!feof($f5_handle)){
  72. //判断指针是否到文件结尾
  73. $buffer=fgets($f5_handle);
  74. //每次从文件中读取一行
  75. echo $buffer."
    ";
  76. }
  77. fclose($f5_handle);
  78. $f6_handle=fopen("data.txt","r") or die("文件打开失败");
  79. while(!feof($f6_handle)){
  80. //判断指针是否到文件结尾
  81. $buffer=fgetc($f6_handle);
  82. //每次从文件中读取一个字符
  83. echo $buffer."
    ";
  84. }
  85. fclose($f6_handle);
  86. print_r(file("data.txt"));
  87. //把文件读入到一个数组中
  88. readfile("data.txt");
  89. //直接将文件中的内容读出,并输出到浏览器
  90. //访问远程文件
  91. 确保php.ini中的"allow_url_fopen"是打开的,并且确保远程文件具有访问权限
  92. $ws_file=fopen("http://www.wowsai.com","r")or die("远程文件打开失败");
  93. //打开远程文件
  94. while(!feof($ws_file)){
  95. $ws_line=fgets($ws_file);
  96. if(preg_match("/(.*)/",$ws_line,$res)){<li>//使用正则匹配网站的标题</li> <li>$title=$res[1];</li> <li>break;</li> <li>}</li> <li>}</li> <li>fclose($ws_file);</li> <li>echo $title."<br>";</li> <li>//移动文件的指针</li> <li>//ftell()</li> <li>返回指针的当前位置</li> <li>//fseek()</li> <li>移动指针到指定的位置</li> <li>//rewind()</li> <li>移动指针到文件的开头</li> <li>$fp=fopen("data.txt","r") or die("文件打开失败");</li> <li>//用只读方式打开文件 </li> <li>echo ftell($fp)."<br>";</li> <li>//输出刚打开文件时的指针的位置,默认是0</li> <li>echo fread($fp,10)."<br>";</li> <li>//读取文件的前10个字符,文件指针发生了改变</li> <li>echo ftell($fp)."<br>";</li> <li>//读取文件的10个字符后,文件的指针到了10的位置</li> <li>fseek($fp,30,SEEK_CUR);</li> <li>//将文件的指针向后移动30个字符</li> <li>echo ftell($fp)."<br>";</li> <li>//文件移动30个字符后,到了40的位置</li> <li>echo fread($fp,10)."<br>";</li> <li>//读取40到50之间的字符,指针会到50</li> <li>fseek($fp,-10,SEEK_END);</li> <li>//将指针设置到文件倒数第10的位置</li> <li>echo fread($fp,10)."<br>";</li> <li>//输出文件最后10个字符</li> <li>rewind($fp);</li> <li>//将文件指针设置到文件的开头</li> <li>echo ftell($fp);</li> <li>//文件的指针又回到了开头,所以会输出0</li> <li>fclose($fp);</li> <li>?></li> <li>
复制代码

PHP


Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:PHP的文件操作 Article suivant:PHP怎么实现网站保存快捷方式