PHP文件操作详细介绍

本文实例为大家分享了PHP文件操作的具体代码,供大家参考,具体内容如下

(1)文件读取

file_get_contents( )

实例:

  1. <?php
  2. // 文件部分 文件的读取
  3. // 要求把a.txt的内容读取出来,赋值给str变量
  4. /* file_get_contents()可以获取一个文件的内容或一个网络资源的内容
  5. file_get_contents()是读取文件/读网络数据比较快捷的一个函数,帮我们封装了打开/关闭等操作
  6. 但是要小心,这个函数一次性把文件的内容读取出来,放内存里,因此工作中处理上百M的大文件,谨慎使用
  7. */
  8. $file='a.txt';
  9. $str=file_get_contents($file);
  10. echo$str;
  11. /*
  12. $url = 'http://www.163.com/';
  13. $str = file_get_contents($url);
  14. file_put_contents('162.html', $str);
  15. */
  16. // 读出来的内容,能否写入另一个文件里面
  17. /*
  18. file_put_contents() 这个函数用来把内容写入文件
  19. 也是一个快捷函数,帮我们封装打开写入关闭的细节
  20. 注:如果指定的文件不存在,则会自动创建
  21. */
  22. file_put_contents('./b.txt',$str);
  23. /*
  24. 最简单的爬网页程序
  25. */
  26. $url='http://www.phpfensi.com/';
  27. $html=file_get_contents($url);
  28. if(file_put_contents('sina.html',$html)) {
  29. echo"抓过来了";
  30. }else{
  31. echo"抓错了";
  32. }

(2)文件操作

fopen: 打开

fread : 读取

fwrite: 写入

fclose: 关闭

实例:

  1. <?php
  2. /*
  3. 文件操作之
  4. fopen
  5. fread
  6. fwrite
  7. fclose
  8. */
  9. /*
  10. fopen() 打开一个文件,返回一个句柄资源
  11. fopen($filename,mode);
  12. 第二个参数是‘模式',如只读模式,读写模式等
  13. 返回值:资源
  14. */
  15. $file='./162.html';
  16. $fh=fopen($file,'r');
  17. // 沿着上面返回的$file这个资源通道来读文件
  18. echofread($fh,10),'<br />';
  19. // 返回 int(0),说明没有成功写入
  20. // 原因:在于第二个mode参数,选的r,即只读打开
  21. var_dump(fwrite($fh,'测试一下,能不能用'));
  22. // 关闭资源
  23. fclose($fh);
  24. /*
  25. r+读写模式,并把指针指向文件头
  26. 写入成功
  27. 注:从文件头,写入时,覆盖相等字节的字符
  28. */
  29. $fh=fopen($file,'r+');
  30. echofwrite($fh,'hello') ?'success':'fail','<br />';
  31. fclose($fh);
  32. /*
  33. w:写入模式(fread读不了)
  34. 并把文件大小截为0
  35. 指针停于开头处
  36. */
  37. echo'<br />';
  38. $fh=fopen('./test.txt','w');
  39. fclose($fh);
  40. echo"ok!";

(3)文件是否存在、修改时间

filemtime

  1. <?php
  2. /*
  3. 判断文件是否存在
  4. 获取文件的创建时间/修改时间
  5. */
  6. $file='./students.txt';
  7. if(file_exists($file)) {
  8. echo$file,"存在 <br />";
  9. echo'上次修改时间是:',date('Y-m-d,H:i:s',filemtime($file));
  10. }else{
  11. echo"不存在";
  12. }