一、操作文件,获取文件信息 //打开文件 $file_path="text.txt"; if($fp=fopen($file_path,"r")){ //取出文件的信息 $file_info=fstat($fp); echo " "; print_r($file_info); echo " "; //单个的取出 $file_size=$file_info['size']; //文件大小按字节来计算的 echo "文件的大小为:".$file_size; echo " 文件上次访问的时间:".date("Y-m-d H:i:s",$file_info['atime']); //atime表示【该文件上次被访问的时间】 echo " 文件上次修改的时间:".date("Y-m-d H:i:s",$file_info['mtime']); //mtime表示【该文件上次内容被修改的时间】 echo " 文件上次change的时间:".date("Y-m-d H:i:s",$file_info['ctime']); //ctime表示【该文件上次 文件所有者/文件组 修改的时间】 }else{ echo "打开文件失败"; } //关闭文件,这个非常重要 fclose($fp); ?> 2、第二种获取文件信息方式 //第二种获取文件信息 $file_path="text.txt"; if(!file_exists($file_path)){ echo "文件不存在"; exit(); } echo " ".date("Y-m-d H:i:s",fileatime($file_path)); echo " ".date("Y-m-d H:i:s",filemtime($file_path)); echo " ".date("Y-m-d H:i:s",filectime($file_path)); //echo " ".filemtime($file_path); //echo " ".filectime($file_path); ?> 二、读取文件操作 //读取文件 $file_path="text.txt"; if(!file_exists($file_path)){ echo "文件不存在"; exit(); } //打开文件 $fp=fopen($file_path,"a+"); //读取文件 $content=fread($fp,filesize($file_path)); echo "文件内容是: "; //默认情况下把内容输出到网页后,不会换行显示,因为网页不识别rn //所有要把rn => $content=str_replace("rn"," ",$content); echo $content; fclose($fp); ?> 2、第二种读取文件的方式 //第二种读取文件的方式 $file_path="text.txt"; if(!file_exists($file_path)){ echo "文件不存在"; exit(); } $content=file_get_contents($file_path); $content=str_replace("rn"," ",$content); echo $content; ?> 3、第三种读取方法,循环读取(对付大文件) //第三种读取方法,循环读取(对付大文件) $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 获取文件 $arr=parse_ini_file("db.ini"); echo " "; print_r($arr); echo " "; echo $arr['host']; //连接数据库 $conn = mysql_connect($arr['host'], $arr['user'], $arr['pwd']); if(!$conn){ echo "error"; } echo "OK"; ?> 三、写文件 //写文件 $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函数 //第二种方式写文件 $file_path="text.txt"; $content="hello,worldrn"; //将一个字符串写入文件 默认是【FILE_USE_INCLUDE_PATH 】"w+"重新写入 file_put_contents($file_path,$content,FILE_APPEND); echo "OK"; ?> |