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));
//默认情况下显示到网页的内容不会换行,需替换换行符\r\n -> <br/>
$con = str_replace("\r\n", "<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("\r\n", "<br/>", $con);
echo "$con";
}
//关闭指针
fclose($fp); echo "<br><br>******第三种读取方法********<br>";
$con = file_get_contents($filename);
//替换换行符
$con = str_replace("\r\n", "<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/>";
}

  

PHP中文件操作(1)--打开/读取文件的更多相关文章

  1. PHP文件操作 之打开远程文件

    //配置php.ini 开启allow_url_fopen选项 //访问的文件有可读或者可写的权限 //$f = fopen('http://www.example.com/a.txt','rb'); ...

  2. python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件

    python操作txt文件中数据教程[3]-python读取文件夹中所有txt文件并将数据转为csv文件 觉得有用的话,欢迎一起讨论相互学习~Follow Me 参考文献 python操作txt文件中 ...

  3. matlab文件操作及读txt文件(fopen,fseek,fread,fclose)

    文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件.MATLAB提供了一系列低层输入输出函数,专门用于文件操作. 1.文件的打开与关闭 1)打开文件 在读写文件之前,必须先用f ...

  4. MATLAB文件操作及读txt文件

    转自:http://blog.csdn.net/vblittleboy/article/details/8049748 文件操作是一种重要的输入输出方式,即从数据文件读取数据或将结果写入数据文件.MA ...

  5. 【温故而知新:文件操作】C#的文件读写相关

    StreamReader类以及其方法ReadLine,Read,ReadToEnd的分析 首先StreamReader类的构造参数非常丰富在这里,我觉得最常用的就是StreamReader(Strea ...

  6. HTML5 文件域+FileReader 分段读取文件并上传到服务器(六)

    说明:使用Ajax方式上传,文件不能过大,最好小于三四百兆,因为过多的连续Ajax请求会使后台崩溃,获取InputStream中数据会为空,尤其在Google浏览器测试过程中. 1.简单分段读取文件为 ...

  7. Python---进阶---文件操作---按需求打印文件的内容

    一. 编写一个程序,当用户输入文件名和行数的时候,将该文件的前N行内容打印到屏幕上 input 去接收一个文件名 input 去接收一个行数 ----------------------------- ...

  8. Java利用内存映射文件实现按行读取文件

    我们知道内存映射文件读取是各种读取方式中速度最快的,但是内存映射文件读取的API里没有提供按行读取的方法,需要自己实现.下面就是我利用内存映射文件实现按行读取文件的方法,如有错误之处请指出,或者有更好 ...

  9. 【O】VSS 2005上传PDF文件之后,打开提示文件损坏或者内容为空

    问题: VSS 2005上传PDF文件之后,打开提示文件损坏或者内容为空: 解决方式: 在vss的客户端的tools-option中,file type选项卡里,在binary file文本框中,加入 ...

  10. php高效遍历文件夹、高效读取文件

    /** * PHP高效遍历文件夹(大量文件不会卡死) * @param string $path 目录路径 * @param integer $level 目录深度 */ function fn_sc ...

随机推荐

  1. MySQL数据库中的字段类型varchar和char的主要区别是什么?哪种字段查找效率要高?

    1,varchar与char的区别?(1)区别一,定长和变长,char表示定长,长度固定:varchar表示变长,长度可变.当插入字符串超出长度时,视情况来处理,如果是严格模式,则会拒绝插入并提示错误 ...

  2. Kafka运行环境优化实践

    Kafka高性能的特点及条件 Kafka是一个高吞吐量分布式消息中间件,并且提供了消息的持久化功能.其高可行有两个重要的特点: 利用了磁盘连续读写性能显著高于随机读写性能的特点 并发,将一个topic ...

  3. 【转】JMeter学习参数化User Defined Variables与User Parameters

    偶然发现JMeter中有两个元件(User Defined Variables与User Parameters)很相近,刚开始时我也没注意,两者有什么不同.使用时却发现两者使用场景有些不同,现在小结一 ...

  4. java中的IO流(输入流与输出流)概述与总结

    Java中IO流,输入输出流概述与总结 总结的很粗糙,以后时间富裕了好好修改一下. 1:Java语言定义了许多类专门负责各种方式的输入或者输出,这些类都被放在java.io包中.其中, 所有输入流类都 ...

  5. Redis-cli命令总结

    连接操作相关的命令 默认直接连接  远程连接-h 192.168.1.20 -p 6379 ping:测试连接是否存活如果正常会返回pong echo:打印 select:切换到指定的数据库,数据库索 ...

  6. Android RecyclerView的使用

    RecyclerView是什么? RecyclerView是一种新的视图组件,目标是为任何基于适配器的视图提供相似的渲染方式.它被作为ListView和GridView控件的继承者,在最新的suppo ...

  7. 分区助手里如何从临近盘(如D盘)抽取一定的空间给已经快满了的盘(如E盘)(博主推荐)(图文详解)

    不多说,直接上干货! 分区助手是什么?(博主推荐)(图文详解) 分区助手各版本比较(图文详解) 分区助手官网使用教程(专业版.绿色版和WinPE版)(图文详解) 安装分区助手时出现“分区助手已安装到你 ...

  8. SQL Function 自定义函数

    目录 产生背景(已经有了存储过程,为什么还要使用自定义函数) 发展历史 构成 使用方法 适用范围 注意事项 疑问   内容 产生背景(已经有了存储过程,为什么还要使用自定义函数) 与存储过程的区别(存 ...

  9. Web自动化 - 选择操作元素 1

    文章转自 白月黑羽教Python 所有的 UI (用户界面)操作 的自动化,都需要选择界面元素. 选择界面元素就是:先让程序能找到你要操作的界面元素. 先找到元素,才能操作元素. 选择元素的方法 程序 ...

  10. redis 安装报错 jemalloc/jemalloc.h: No such file or directory。

    对于redis安装的这个错误,我在博客redis 安装 与错误解决办法最后有提及,但是网上大部分文章的对这个问题的解答都是有误的.所以在这里单列出来. 错误内容: jemalloc/jemalloc. ...