用户名:
密 码: 记住
您当前的位置:首页 > 网络编程 > php教程

php文件操作函数详解

时间:2015-01-23  来源:西部数据  作者:西部数据

在php中提供了大量的对文件操作的函数,下面我来给大家总结php文件函数对文件读入,写入操作,有需了解的这些函数的朋友可进入参考.

一、操作文件,获取文件信息,代码如下:

  1. <?php 
  2.     //打开文件 
  3.     $file_path="text.txt"
  4.     if($fp=fopen($file_path,"r")){ 
  5.         //取出文件的信息 
  6.         $file_info=fstat($fp); 
  7.         echo "<pre>"
  8.         print_r($file_info); 
  9.         echo "</pre>"
  10.         //单个的取出 
  11.         $file_size=$file_info['size']; 
  12.         //文件大小按字节来计算的 
  13.         echo "文件的大小为:".$file_size
  14.         echo  "<br/>文件上次访问的时间:".date("Y-m-d H:i:s",$file_info['atime']);  //atime表示【该文件上次被访问的时间】 
  15.         echo  "<br/>文件上次修改的时间:".date("Y-m-d H:i:s",$file_info['mtime']);  //mtime表示【该文件上次内容被修改的时间】 
  16.         echo  "<br/>文件上次change的时间:".date("Y-m-d H:i:s",$file_info['ctime']); //ctime表示【该文件上次 文件所有者/文件组 修改的时间】 
  17.     }else
  18.         echo "打开文件失败"
  19.     } 
  20.      
  21.     //关闭文件,这个非常重要 
  22.     fclose($fp); 
  23. ?> 

2、第二种获取文件信息方式,代码如下:

  1. <?php 
  2.     //第二种获取文件信息 
  3.     $file_path="text.txt"
  4.     if(!file_exists($file_path)){ 
  5.         echo "文件不存在"
  6.         exit(); 
  7.     } 
  8.     echo "<br>".date("Y-m-d H:i:s",fileatime($file_path)); 
  9.     echo "<br>".date("Y-m-d H:i:s",filemtime($file_path)); 
  10.     echo "<br>".date("Y-m-d H:i:s",filectime($file_path)); 
  11.     //echo "<br>".filemtime($file_path); 
  12.     //echo "<br>".filectime($file_path); 
  13. ?> 

二、读取文件操作,代码如下:

  1. <?php 
  2.     //读取文件 
  3.     $file_path="text.txt"
  4.     if(!file_exists($file_path)){ 
  5.         echo "文件不存在"
  6.         exit(); 
  7.     } 
  8.      
  9.     //打开文件 
  10.     $fp=fopen($file_path,"a+"); 
  11.     //读取文件 
  12.     $content=fread($fp,filesize($file_path)); 
  13.     echo "文件内容是:<br/>"
  14.     //默认情况下把内容输出到网页后,不会换行显示,因为网页不识别rn 
  15.     //所有要把rn =><br/> 
  16.      
  17.     $content=str_replace("rn","<br/>",$content); 
  18.     echo  $content
  19.     fclose($fp); 
  20. ?> 

2、第二种读取文件的方式,代码如下:

  1. <?php 
  2.     //第二种读取文件的方式 
  3.     $file_path="text.txt"
  4.     if(!file_exists($file_path)){ 
  5.         echo "文件不存在"
  6.         exit(); 
  7.     } 
  8.     $content=file_get_contents($file_path); 
  9.     $content=str_replace("rn","<br/>",$content); 
  10.     echo  $content
  11. ?> 

3、第三种读取方法,循环读取(对付大文件),代码如下:

  1. <?php 
  2.  
  3.     //第三种读取方法,循环读取(对付大文件) 
  4.     $file_path="text.txt"
  5.     if(!file_exists($file_path)){ 
  6.         echo "文件不存在"
  7.         exit(); 
  8.     } 
  9.     //打开文件 
  10.     $fp=fopen($file_path,"a+"); 
  11.     //定义每次读取的多少字节 
  12.     $buffer=1024; 
  13.     //一边读取。一边判断是否达到文件末尾 
  14.     while(!feof($fp)){ 
  15.         //按1024个字节读取数据 
  16.         $content=fread($fp,$buffer); 
  17.         echo $content
  18.     } 
  19.     fclose($fp); 
  20. ?> 

4、文件读取实际应用:当我们连接数据库的时候,可以把指定的数据配置到一个文件中,然后再PHP运行时,实时获取信息,代码如下:

db.ini 文件

host=127.0.0.1 user=root pwd=root db=test

获取文件,代码如下:

  1. <?php 
  2.     $arr=parse_ini_file("db.ini"); 
  3.     echo "<pre>"
  4.     print_r($arr); 
  5.     echo "</pre>"
  6.      
  7.     echo $arr['host']; 
  8.     //连接数据库 
  9.     $conn = mysql_connect($arr['host'], $arr['user'], $arr['pwd']); 
  10.     if(!$conn){ 
  11.         echo "error"
  12.     } 
  13.     echo "OK"
  14. ?> 

三、写文件,代码如下:

  1. <?php 
  2.     //写文件 
  3.     $file_path="text.txt"
  4.     if(!file_exists($file_path)){ 
  5.         echo "文件不存在"
  6.         exit(); 
  7.     } 
  8.     //"a+" 在文件后面追加  "w+"重新写入 
  9.     $fp=fopen($file_path,"w+"); 
  10.     $con="rn你好"
  11.     for($i=0;$i<10;$i++){ 
  12.     fwrite($fp,$con);} 
  13.     echo "添加成功"
  14.     fclose($fp); 
  15.      
  16. ?> 

2、第二中方式,通过file_put_contents函数,代码如下:

  1. <?php 
  2.     //第二种方式写文件 
  3.     $file_path="text.txt"
  4.     $content="hello,worldrn"
  5.      //开源代码phpfensi.com 
  6.     //将一个字符串写入文件  默认是【FILE_USE_INCLUDE_PATH 】"w+"重新写入 
  7.     file_put_contents($file_path,$content,FILE_APPEND); 
  8.     echo "OK"
  9. ?>
来顶一下
返回首页
返回首页
推荐资讯
WiFi太不安全:7岁女孩11分钟内入侵公共网络 WiFi太不安全:7岁女孩11分钟内入侵近期刚刚发布研究说WiFi网络能获得人们手机里多少私人信息,
不服跑个分?人工智能也出现“刷分”乱象 不服跑个分?人工智能也出现“刷分2014年,人工智能领域突然爆发,成为了科研和科技创业的热门
相关文章
栏目更新
栏目热门