如何在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 字符串分割和比较
Oct 06 PHP
PHP获取当前完整URL地址的函数
Dec 21 PHP
php中mysql连接方式PDO使用详解
Feb 25 PHP
浅析PHP中Session可能会引起并发问题
Jul 23 PHP
php+ajax实现无刷新分页
Nov 18 PHP
php简单实现短网址(短链)还原的方法(测试可用)
May 09 PHP
利用PHP如何写APP接口详解
Aug 23 PHP
jquery不支持toggle()高(新)版本的问题解决
Sep 24 PHP
PHP读MYSQL中文乱码的快速解决方法
Oct 01 PHP
php pdo操作数据库示例
Mar 10 PHP
PHP读取并输出XML文件数据的简单实现方法
Dec 22 PHP
如何用PHP实现分布算法之一致性哈希算法
May 26 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
tp5(thinkPHP5框架)使用DB实现批量删除功能示例
2019/05/28 PHP
web页面数据展示新想法(json)
2010/06/08 Javascript
图片在浏览器中底部对齐 解决方法之一
2011/11/30 Javascript
jquery图片延迟加载 前端开发技能必备系列
2012/06/18 Javascript
js格式化时间和js格式化时间戳示例
2014/02/10 Javascript
jquery的ajax跨域请求原理和示例
2014/05/08 Javascript
使用GruntJS构建Web程序之安装篇
2014/06/04 Javascript
js与C#进行时间戳转换
2014/11/14 Javascript
简化版手机端照片预览组件
2015/04/13 Javascript
js强制把网址设为默认首页
2015/09/29 Javascript
轻松使用jQuery双向select控件Bootstrap Dual Listbox
2015/12/13 Javascript
vue实现列表的添加点击
2016/12/29 Javascript
基于react框架使用的一些细节要点的思考
2017/05/31 Javascript
js禁止Backspace键使浏览器后退的实现方法
2017/09/01 Javascript
react.js组件实现拖拽复制和可排序的示例代码
2018/08/20 Javascript
用POSTMAN发送JSON格式的POST请求示例
2018/09/04 Javascript
使用electron实现百度网盘悬浮窗口功能的示例代码
2018/10/24 Javascript
jQuery实现王者荣耀手风琴效果
2020/01/17 jQuery
JS数组Reduce方法功能与用法实例详解
2020/04/29 Javascript
[04:40]2016个国际邀请赛中国区预选赛场地——华西村观战指南
2016/06/25 DOTA
Python实现国外赌场热门游戏Craps(双骰子)
2015/03/31 Python
自动化Nginx服务器的反向代理的配置方法
2015/06/28 Python
浅析Python中的赋值和深浅拷贝
2017/08/15 Python
django mysql数据库及图片上传接口详解
2019/07/18 Python
django 链接多个数据库 并使用原生sql实现
2020/03/28 Python
HTML5 Canvas入门学习教程
2016/03/17 HTML / CSS
香港钟表珠宝首饰商城:OneMallTime网摩间
2016/10/14 全球购物
菲律宾购物网站:Lazada菲律宾
2018/04/05 全球购物
毕业实习个人鉴定范文
2013/12/10 职场文书
创建市级文明单位实施方案
2014/03/01 职场文书
驾驶员培训方案
2014/05/01 职场文书
关于安全演讲稿
2014/05/09 职场文书
学习保证书
2015/01/17 职场文书
办公室主任岗位职责范本
2015/03/31 职场文书
2016春节放假通知范文
2015/08/18 职场文书
MySQL多表查询机制
2022/03/17 MySQL