<?php
//**************第一种读取方式*****************************
代码如下:
header("content-type:text/html;charset=utf-8");
//文件路径
$file_path = "text.txt";
//判断是否有这个文件
if (file_exists($file_path)) {
    if ($fp = fopen($file_path, "a+")) {
        //读取文件
        $conn = fread($fp, filesize($file_path));
        //替换字符串
        $conn = str_replace("rn", "<br/>", $conn);
        echo $conn . "<br/>";
    } else {
        echo "文件打不开";
    }
} else {
    echo "没有这个文件";
}
fclose($fp);
 
//*******************第二种读取方式***************************
代码如下:
header("content-type:text/html;charset=utf-8");
//文件路径
$file_path = "text.txt";
$conn      = file_get_contents($file_path);
$conn      = str_replace("rn", "<br/>", file_get_contents($file_path));
echo $conn;
fclose($fp);
 
//******************第三种读取方式,循环读取*****************
代码如下:
header("content-type:text/html;charset=utf-8");
//文件路径
$file_path = "text.txt";
//判断文件是否存在
if (file_exists($file_path)) {
    //判断文件是否能打开
    if ($fp = fopen($file_path, "a+")) {
        $buffer = 1024;
        //边读边判断是否到了文件末尾
        $str = "";
        while (!feof($fp)) {
            $str .= fread($fp, $buffer);
        }
    } else {
        echo "文件不能打开";
    }
} else {
    echo "没有这个文件";
}
//替换字符
$str = str_replace("rn", "<br>", $str);
echo $str;
fclose($fp);
读取INI配置文件的函数:
$arr = parse_ini_file("config.ini");
//返回的是数组
echo $arr['host'] . "<br/>";
echo $arr['username'] . "<br/>";
echo $arr['password'] . "<br/>";
 
//_______________________读取大文件
$fp   = fopen($file, "r");
$num   = 10;
$chunk = 4096;
$fs    = sprintf("%u", filesize($file));
$max   = (intval($fs) == PHP_INT_MAX) ? PHP_INT_MAX : filesize($file);
for ($len = 0; $len < $max; $len += $chunk) {
    $seekSize = ($max - $len > $chunk) ? $chunk : $max - $len;
    fseek($fp, ($len + $seekSize) * -1, SEEK_END);
    $readData = fread($fp, $seekSize) . $readData;
 
    if (substr_count($readData, "n") >= $num + 1) {
        preg_match("!(.*?n){" . ($num) . "}$!", $readData, $match);
        $data = $match[0];
        break;
    }
}
fclose($fp);
echo $data;

php读取文件内容的三种方法的更多相关文章

  1. php中读取文件内容的几种方法。(file_get_contents:将文件内容读入一个字符串)

    php中读取文件内容的几种方法.(file_get_contents:将文件内容读入一个字符串) 一.总结 php中读取文件内容的几种方法(file_get_contents:将文件内容读入一个字符串 ...

  2. linux清空文件内容的三种方法

    linux系统中清空文件内容的三种方法 1.使用vi/vim命令打开文件后,输入"%d"清空,后保存即可.但当文件内容较大时,处理较慢,命令如下:vim file_name:%d: ...

  3. 详解linux下批量替换文件内容的三种方法(perl,sed,shell)

    在建设本网站的时候,发现新建了很多的网页,突然发现,每个文件都需要进行修改一样的内容,一个一个打开很是麻烦,所以,总结了一下如何快速修改一个目录下多个文件进行内容替换.第三种方法用的不多 方法一 使用 ...

  4. php中读取文件内容的几种方法

    1.fread string fread ( int $handle , int $length ) fread() 从 handle 指向的文件中读取最多 length 个字节.该函数在读取完最多 ...

  5. PHP读取文件内容的三种方式

    <?php // 第一种读取方式 header("content-type:text/html;charset=utf-8"); // 文件路径 $fileA = " ...

  6. [原]Linux下清空文件内容的三种方法

    ========问题======== 有些文件需要清空内容而不改变属性 =======解决方案====== 1.直接删除,创建同名文件.(这种方法的弊端是有可能这个文件带着权限或者是属性,那么你新建这 ...

  7. Python读取文件内容的三种方式并比较

    本次实验的文件是一个60M的文件,共计392660行内容. 程序一: def one(): start = time.clock() fo = open(file,'r') fc = fo.readl ...

  8. Java追加文件内容的三种方法

    import java.io.BufferedWriter; import java.io.File; import java.io.FileOutputStream; import java.io. ...

  9. PHP读取文件内容的五种方式(转载)

    php读取文件内容的五种方式 分享下php读取文件内容的五种方法:好吧,写完后发现文件全部没有关闭.实际应用当中,请注意关闭 fclose($fp); php读取文件内容: -----第一种方法--- ...

随机推荐

  1. RegExp对象的三个方法

      RegExp 对象有 3 个方法:test().exec() 以及 compile().   test( ) test()方法检索字符串中的指定值.返回值是true或false. 例子: 因为字符 ...

  2. screen乱码问题

    在 .screenrc下设置: defencoding gbk encoding gbk gbk detatch+reattach后,设置失效,这时可以直接用命令来配置: ctrl+a :defenc ...

  3. 【转载】keil5中加入STM32F10X_HD,USE_STDPERIPH_DRIVER的原因

    初学STM32,在RealView MDK 环境中使用STM32固件库建立工程时,初学者可能会遇到编译不通过的问题.出现如下警告或错误提示: warning: #223-D: function &qu ...

  4. NGINX 配置404错误页面转向

    什么是404页面 如果碰巧网站出了问题,或者用户试图访问一个并不存在的页面时,此时服务器会返回代码为404的错误信息,此时对应页面就是404页面.404页面的默认内容和具体的服务器有关.如果后台用的是 ...

  5. Python3基础知识

    1.查看关键字 Python3查看关键字要先导入模块keyword,然后运用keyword的属性kwlist获取 >>> import keyword>>> key ...

  6. tone() 和 IRremote 冲突的解决办法

    tone()函数冲突 http://www.geek-workshop.com/thread-4037-1-1.html 可以自制函数newtone() void newtone(byte toneP ...

  7. sql 查询 ORA-12170 TNS 连接超时特殊原因

    一般对于ORA-12170这个问题 1 看数据ip 是否能ping通 2 数据库服务是否启动 3 数据库服务所在服务器防火墙 然而当你能进去数据,而报这个这错时: 1 看代码中数据库连接是写错 2 如 ...

  8. 阿里java开发手册中命名规约解读之DO/BO/DTO/VO/AO

    前言 在阅读<阿里巴巴Java开发手册>时,看到命名规则中有这样一条 虽然知道这些是根据Java对象的角色所分配名称的后缀,但是没有弄清楚分别是什么意思,日常开发中也没有使用到. 网上查找 ...

  9. linux中操作java进程

    通过 ps -ef|grep java 来得到真正运行的线程 通过kill -9 XXXXX来杀死正在运行的线程,其中XXXXX是上面java线程的序号. 另外还有2个指令我也不熟悉,一个是cat,一 ...

  10. MyEclipse中导出javadoc文档

    1.选中要生成文档的类或者项目→File→Export→Java→Javadoc. 2.在Javadoc command中选择JDK下对应的javadoc.exe:Select types for w ...