如何在PHP中读写文件


Posted in PHP onSeptember 07, 2020

在PHP中读写文件,可以用到一下内置函数:

1.fopen(创建文件和打开文件)

语法:

fopen(filename,mode)

filename,规定要打开的文件。mode,打开文件的模式,可能的值见下表。

mode 说明
"r" 只读方式打开,将文件指针指向文件开头。
"r+" 读写方式打开,将文件指针指向文件开头。
"w" 写入方式打开,将文件指针指向文件开头并将文件大小截为零。如果文件不存在则尝试创建。
"w+" 读写方式打开,将文件指针指向文件开头并将文件大小截为零。如果文件不存在则尝试创建。
"a" 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建。
"a+" 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建。

如果成功打开文件,fopen函数的返回值是一个文件指针,如果出错,返回 FALSE。

示例:

<?php
$fp = fopen("test.txt", "r");
?>

2.fclose(关闭文件)

语法:

fclose(filepointer)

filepointer,要关闭的文件指针。如果成功,fclose 函数返回 TRUE,如果失败,fclose 函数返回 FALSE。

示例:

<?php
$fp = fopen("test.txt", "r");
fclose($fp);
?>

3.feof(检测是否已到达文件末尾)

语法:

feof(filepointer)

filepointer,要检测的文件指针,该指针必须指向成功打开没有关闭的文件。如果文件指针到了文件末尾或者出错时,feof函数返回 TRUE。

示例:

<?php
$fp = fopen("test.txt", "r");
while(! feof($fp))
{
echo fgets($fp). "<br />";
}
fclose($fp);
?>

4.fgets(从文件指针中读取一行)

语法:

fgets(filepointer)

filepointer,要读取的文件指针。如果成功,从文件中读取一行并返回字符串,如果失败,返回 FALSE。

示例:

<?php
$fp = fopen("test.txt", "r");
if($fp)
{
for($i=1;! feof($fp);$i++)
{
echo "行".$i." : ".fgets($fp). "<br />";
}
}
else
{
echo "打开文件失败";
}
fclose($fp);
?>

假设test.txt的内容为:

hello world
hello cnblogs
hello heihaozi
hello everyone

页面输出的结果为:

行1 : hello world
行2 : hello cnblogs
行3 : hello heihaozi
行4 : hello everyone

5.fwrite(写入文件)

语法:

fwrite(filepointer,string)

filepointer,要写入的文件指针。string,要写入的字符串。如果成功,返回写入的字符数,如果失败,返回 FALSE。

示例:

<?php
$fp = fopen("test.txt", "w");//文件被清空后再写入
if($fp)
{
$count=0;
for($i=1;$i<=5;$i++)
{
$flag=fwrite($fp,"行".$i." : "."Hello World!\r\n");
if(!$flag)
{
echo "写入文件失败<br>";
break;
}
$count+=$flag;
}
echo "共写入".$count."个字符";
}
else
{
echo "打开文件失败";
}
fclose($fp);
?>

页面输出的结果为:

共写入100个字符

test.txt文件会被写入:

行1 : Hello World!
行2 : Hello World!
行3 : Hello World!
行4 : Hello World!
行5 : Hello World!

注:为了简化操作,部分函数的可选参数没有列出。

以上就是如何在PHP中读写文件的详细内容,更多关于PHP中读写文件的资料请关注三水点靠木其它相关文章!

PHP 相关文章推荐
PHP通用检测函数集合
Feb 08 PHP
简单的PHP缓存设计实现代码
Sep 30 PHP
PHP图片验证码制作实现分享(全)
May 10 PHP
用php实现百度网盘图片直链的代码分享
Nov 01 PHP
基于PHP生成静态页的实现方法
May 10 PHP
php的sso单点登录实现方法
Jan 08 PHP
typecho插件编写教程(二):写一个新插件
May 28 PHP
PHP curl使用实例
Jul 02 PHP
php中的登陆login实例代码
Jun 20 PHP
微信公众号开发之文本消息自动回复php代码
Aug 08 PHP
详解将数据从Laravel传送到vue的四种方式
Oct 16 PHP
PHP 出现 http500 错误的解决方法
Mar 09 PHP
PHP延迟静态绑定使用方法实例解析
Sep 05 #PHP
PHP autoload使用方法及步骤详解
Sep 05 #PHP
PHP数组访问常用方法解析
Sep 05 #PHP
XAMPP升级PHP版本实现步骤解析
Sep 04 #PHP
php使用Swoole实现毫秒级定时任务的方法
Sep 04 #PHP
Laravel Reponse响应客户端示例详解
Sep 03 #PHP
PHP 实现base64编码文件上传出现问题详解
Sep 01 #PHP
You might like
基于asp+ajax和数据库驱动的二级联动菜单
2010/05/06 PHP
php实现图片添加水印功能
2014/02/13 PHP
php中3种方法删除字符串中间的空格
2014/03/10 PHP
php通过Chianz.com获取IP地址与地区的方法
2015/01/14 PHP
扩展js对象数组的OrderByAsc和OrderByDesc方法实现思路
2013/05/17 Javascript
使用JS读秒使用示例
2013/09/21 Javascript
JS实现点击图片在当前页面放大并可关闭的漂亮效果
2013/10/18 Javascript
js如何判断用户是在PC端和还是移动端访问
2014/04/24 Javascript
js实现九宫格图片半透明渐显特效的方法
2015/02/16 Javascript
JavaScript学习笔记之检测客户端类型是(引擎、浏览器、平台、操作系统、移动设备)
2015/12/03 Javascript
AngularJS指令用法详解
2016/11/02 Javascript
JS实现点击循环切换显示内容的方法
2017/10/19 Javascript
JS设计模式之观察者模式实现实时改变页面中金额数的方法
2018/02/05 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
Node.js API详解之 Error模块用法实例分析
2020/05/14 Javascript
OpenLayer3自定义测量控件MeasureTool
2020/09/28 Javascript
[00:36]TI7不朽珍藏III——斯温不朽展示
2017/07/15 DOTA
Python脚本实现自动将数据库备份到 Dropbox
2017/02/06 Python
django多个APP的urls设置方法(views重复问题解决)
2019/07/19 Python
tensorflow:指定gpu 限制使用量百分比,设置最小使用量的实现
2020/02/06 Python
Windows 下python3.8环境安装教程图文详解
2020/03/11 Python
Selenium元素定位的30种方式(史上最全)
2020/05/11 Python
CSS3 透明色 RGBA使用介绍
2013/08/06 HTML / CSS
使用HTML5的File实现base64和图片的互转
2013/08/01 HTML / CSS
HTML5 embed标签定义和用法详解
2014/05/09 HTML / CSS
来自世界各地的优质葡萄酒:VineShop24
2018/07/09 全球购物
Columbia Sportswear法国官网:全球户外品牌
2020/09/25 全球购物
美术专业学生个人自我评价
2013/09/19 职场文书
十佳美德少年事迹材料
2014/02/05 职场文书
电子专业自荐信
2014/07/01 职场文书
小学生光盘行动倡议书
2015/04/28 职场文书
运动会主持人开幕词
2016/03/04 职场文书
创业计划书之水果店
2019/07/18 职场文书
纪念建国70周年演讲稿
2019/07/19 职场文书
《游戏王:大师决斗》新活动上线 若无符合卡组可免费租用
2022/04/13 其他游戏
shell进度条追踪指令执行时间的场景分析
2022/06/16 Servers