一.php读取文件 获得文件的信息
1 <?php ?2 ?3 ????$file_full_path=‘d:/test.txt‘; 4 ????if(file_exists($file_full_path)){ 5 ????????$fp=fopen($file_full_path, ‘r‘); 6 ????????//设置缓冲 7 ????????$buffer=‘‘; 8 ????????$buffer_size=1024; 9 ????????$con_str=‘‘;10 11 ????????//!feof()表示如果没有到文件的结束位置 就继续读取12 ????????while (!feof($fp)) {13 ????????????$buffer=fread($fp, $buffer_size);14 ????????????$con_str.=$buffer;15 ????????}16 17 ????????fclose($fp);18 ????????$con_str=str_replace("\r\n", ‘<br>‘, $con_str);19 ????????$con_str=str_replace("\n", ‘<br>‘, $con_str);20 ????????echo $con_str;21 ????}else{22 ????????echo "<br> 文件不存在";23 ????}24 ??>
二.读取文件的三种方式
1.方式一
1 <?php ?2 ?3 ????$file_full_path="d:/test.txt"; 4 ?5 ????if(file_exists($file_full_path)){ 6 ????????//打开文件 7 ????????$fp=fopen($file_full_path, ‘r‘); 8 ????????//获取文件的大小 9 ????????$file_size=filesize($file_full_path);10 ????????//读取内容11 ????????$con_str=fread($fp, $file_size);12 ????????//关闭文件 很重要!!13 ????????fclose($fp);14 ????????//windows中的换行符和php中的换行符不一样 ?所以要替换15 ????????$con_str=str_replace("\r\n", ‘<br>‘, $con_str);16 ????????//兼容处理17 ????????$con_str=str_replace("\n", ‘<br>‘, $con_str);18 ????????echo $con_str;19 ????}else{20 ????????echo ‘<br>文件不存在‘;21 ????}22 ??>
2.方式二(适合大文件的读取 用buffer缓冲)
1 <?php ?2 ?3 ????$file_full_path=‘d:/test.txt‘; 4 ????if(file_exists($file_full_path)){ 5 ????????$fp=fopen($file_full_path, ‘r‘); 6 ????????//设置缓冲 7 ????????$buffer=‘‘; 8 ????????$buffer_size=1024; 9 ????????$con_str=‘‘;10 11 ????????//!feof()表示如果没有到文件的结束位置 就继续读取12 ????????while (!feof($fp)) {13 ????????????$buffer=fread($fp, $buffer_size);14 ????????????$con_str.=$buffer;15 ????????}16 17 ????????fclose($fp);18 ????????$con_str=str_replace("\r\n", ‘<br>‘, $con_str);19 ????????$con_str=str_replace("\n", ‘<br>‘, $con_str);20 ????????echo $con_str;21 ????}else{22 ????????echo "<br> 文件不存在";23 ????}24 25 ??>
3.读取的内容不是很多的建议第三种
1 <?php 2 ????header(‘content-type:text/html;charset=utf-8‘); 3 ????//第三种处理方式-简捷方式 4 ?5 ????//1. 定义文件路径 6 ????$file_full_path = ‘d:/test.txt‘; 7 ?8 ????if(file_exists($file_full_path)){ 9 ????????10 ????????//file_get_contents做了一个封装处理,底层使用仍然是fopen fread..11 ????????$con_str = file_get_contents($file_full_path);12 ????????//防止乱码 有些人貌似不用写这个 我反正是乱码的。。。13 ????????$con_str = iconv("gb2312", "utf-8//IGNORE",$con_str); ??14 15 ????????//替换换行16 ????????$con_str = str_replace("\r\n", ‘<br>‘, $con_str);17 ????????$con_str = str_replace("\n", ‘<br>‘, $con_str);18 19 ????????echo $con_str;20 21 ????}else{22 ????????echo ‘<br> 文件不存在‘;23 ????}24 25 ??>
php操作文件
原文地址:http://www.cnblogs.com/phpers/p/7931801.html