php文件操作函数详解
在php中提供了大量的对文件操作的函数,下面我来给大家总结php文件函数对文件读入,写入操作,有需了解的这些函数的朋友可进入参考.
一、操作文件,获取文件信息,代码如下:
- <?php
- //打开文件
- $file_path="text.txt";
- if($fp=fopen($file_path,"r")){
- //取出文件的信息
- $file_info=fstat($fp);
- echo "<pre>";
- print_r($file_info);
- echo "</pre>";
- //单个的取出
- $file_size=$file_info['size'];
- //文件大小按字节来计算的
- echo "文件的大小为:".$file_size;
- echo "<br/>文件上次访问的时间:".date("Y-m-d H:i:s",$file_info['atime']); //atime表示【该文件上次被访问的时间】
- echo "<br/>文件上次修改的时间:".date("Y-m-d H:i:s",$file_info['mtime']); //mtime表示【该文件上次内容被修改的时间】
- echo "<br/>文件上次change的时间:".date("Y-m-d H:i:s",$file_info['ctime']); //ctime表示【该文件上次 文件所有者/文件组 修改的时间】
- }else{
- echo "打开文件失败";
- }
- //关闭文件,这个非常重要
- fclose($fp);
- ?>
2、第二种获取文件信息方式,代码如下:
- <?php
- //第二种获取文件信息
- $file_path="text.txt";
- if(!file_exists($file_path)){
- echo "文件不存在";
- exit();
- }
- echo "<br>".date("Y-m-d H:i:s",fileatime($file_path));
- echo "<br>".date("Y-m-d H:i:s",filemtime($file_path));
- echo "<br>".date("Y-m-d H:i:s",filectime($file_path));
- //echo "<br>".filemtime($file_path);
- //echo "<br>".filectime($file_path);
- ?>
二、读取文件操作,代码如下:
- <?php
- //读取文件
- $file_path="text.txt";
- if(!file_exists($file_path)){
- echo "文件不存在";
- exit();
- }
- //打开文件
- $fp=fopen($file_path,"a+");
- //读取文件
- $content=fread($fp,filesize($file_path));
- echo "文件内容是:<br/>";
- //默认情况下把内容输出到网页后,不会换行显示,因为网页不识别rn
- //所有要把rn =><br/>
- $content=str_replace("rn","<br/>",$content);
- echo $content;
- fclose($fp);
- ?>
2、第二种读取文件的方式,代码如下:
- <?php
- //第二种读取文件的方式
- $file_path="text.txt";
- if(!file_exists($file_path)){
- echo "文件不存在";
- exit();
- }
- $content=file_get_contents($file_path);
- $content=str_replace("rn","<br/>",$content);
- echo $content;
- ?>
3、第三种读取方法,循环读取(对付大文件),代码如下:
- <?php
- //第三种读取方法,循环读取(对付大文件)
- $file_path="text.txt";
- if(!file_exists($file_path)){
- echo "文件不存在";
- exit();
- }
- //打开文件
- $fp=fopen($file_path,"a+");
- //定义每次读取的多少字节
- $buffer=1024;
- //一边读取。一边判断是否达到文件末尾
- while(!feof($fp)){
- //按1024个字节读取数据
- $content=fread($fp,$buffer);
- echo $content;
- }
- fclose($fp);
- ?>
4、文件读取实际应用:当我们连接数据库的时候,可以把指定的数据配置到一个文件中,然后再PHP运行时,实时获取信息,代码如下:
db.ini 文件
host=127.0.0.1 user=root pwd=root db=test
获取文件,代码如下:
- <?php
- $arr=parse_ini_file("db.ini");
- echo "<pre>";
- print_r($arr);
- echo "</pre>";
- echo $arr['host'];
- //连接数据库
- $conn = mysql_connect($arr['host'], $arr['user'], $arr['pwd']);
- if(!$conn){
- echo "error";
- }
- echo "OK";
- ?>
三、写文件,代码如下:
- <?php
- //写文件
- $file_path="text.txt";
- if(!file_exists($file_path)){
- echo "文件不存在";
- exit();
- }
- //"a+" 在文件后面追加 "w+"重新写入
- $fp=fopen($file_path,"w+");
- $con="rn你好";
- for($i=0;$i<10;$i++){
- fwrite($fp,$con);}
- echo "添加成功";
- fclose($fp);
- ?>
2、第二中方式,通过file_put_contents函数,代码如下:
- <?php
- //第二种方式写文件
- $file_path="text.txt";
- $content="hello,worldrn";
- //开源代码phpfensi.com
- //将一个字符串写入文件 默认是【FILE_USE_INCLUDE_PATH 】"w+"重新写入
- file_put_contents($file_path,$content,FILE_APPEND);
- echo "OK";
- ?>