zoukankan      html  css  js  c++  java
  • PHP中文件操作(1)--打开/读取文件

    1.打开文件(fopen)

    语法:resource  $fp=fopen(文件地址,模式),返回的是文件指针(file pointer)

    模式 含义
    r 只读
    w 写(清空重写)
    a 追加
    $fp = fopen('./aa.txt', "r");   //只读
    
    $fp = fopen('./aa.txt', "w");   //写(清空重写)
    
    $fp = fopen('./aa.txt', "a");   //追加

    2.读文件(fread ,file_get_contents

    语法:string fread ( $fp , 文件大小 )  

    file_get_contents  将整个文件读入一个字符串

    语法:string file_get_contents ( string $filename)

    <?php 
    $filename = './aa.txt';
    
    echo "<br><br>******第一种读取方法********<br>";
    $fp = fopen($filename, "r");
    $con = fread($fp, filesize($filename));
    //默认情况下显示到网页的内容不会换行,需替换换行符
     -> <br/>
    $con = str_replace("
    ", "<br/>", $con);
    echo "$con";
    //关闭指针
    fclose($fp);
    
    echo "<br><br>******第二种读取方法,循环读取(适用于大文件)********<br>";
    $fp = fopen($filename, "r");
    //设置buffer一次读取1024个字节
    $buffer = 1024;
    //判断文件指针是否到了文件结束的位置
    while (!feof($fp)) {
        //
        $con = fread($fp, $buffer);
        //替换换行符
        $con = str_replace("
    ", "<br/>", $con);
        echo "$con";
    }
    //关闭指针
    fclose($fp);
    
    echo "<br><br>******第三种读取方法********<br>";
    $con = file_get_contents($filename);
    //替换换行符
    $con = str_replace("
    ", "<br/>", $con);
    echo "$con";

    结果:

    3.fgets():读取一行,指针下移一行

    $filename = "aa.txt";
    $fp = fopen($filename, 'r');
    while (!feof($fp)) {
    	echo fgets($fp)."<br/>";
    }
    

    结果:

    $filename = "aa.txt";
    fseek($fp, 0);  //将文件指针移到文件最前面
    while (!feof($fp)) {
    	echo fgets($fp)."<br/>";
    }
    

    结果:

    4.getc():获取一个字符

     

    $filename = "aa.txt";
    $fp = fopen($filename, 'r');
    while (!feof($fp)) {
    	//获取一个中文字符,占用3个字节
    	echo fqetc($fp)."<br/>";
    }
    

      

  • 相关阅读:
    接口的幂等性怎么设计?
    python 实现批量 WKT 转 KML
    火星坐标(GCJ02)高精度反算
    GDAL RasterIO 速度测试程序
    linux下 QtCreator 运行不显示 qDebug 输出的问题
    我使用的 clang-format 配置文件
    cephadm 离线安装部署 ceph 集群记录
    解决vcpkg无法交叉编译arm64版本 HDF5 库的问题
    QEMU 虚拟 aarch64(arm64) 记录
    DE-9IM 空间关系模型
  • 原文地址:https://www.cnblogs.com/zxf100/p/6747369.html
Copyright © 2011-2022 走看看