如何在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数组函数序列之each() - 获取数组当前内部指针所指向元素的键名和键值,并将指针移到下一位
Oct 31 PHP
三个类概括PHP的五种设计模式
Sep 05 PHP
CodeIgniter生成网站sitemap地图的方法
Nov 13 PHP
ThinkPHP表单自动提交验证实例教程
Jul 18 PHP
教你如何开启shopnc b2b2c 伪静态
Oct 21 PHP
PHP实现PDO的mysql数据库操作类
Dec 12 PHP
PHP实现将视频转成MP4并获取视频预览图的方法
Mar 12 PHP
PHP计算数组中值的和与乘积的方法(array_sum与array_product函数)
Apr 01 PHP
thinkphp3.2实现上传图片的控制器方法
Apr 28 PHP
详谈symfony window下的安装 安装时候出现的问题以及解决方法
Sep 28 PHP
PHP一致性hash分布式算法封装类定义与用法示例
Aug 04 PHP
laravel 解决路由除了根目录其他都404的问题
Oct 18 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
PHP 数据结构 算法 三元组 Triplet
2011/07/02 PHP
php计算几分钟前、几小时前、几天前的几个函数、类分享
2014/04/09 PHP
php中有关字符串的4个函数substr、strrchr、strstr、ereg介绍和使用例子
2014/04/24 PHP
Laravel框架学习笔记之批量更新数据功能
2019/05/30 PHP
PHP pthreads v3使用中的一些坑和注意点分析
2020/02/21 PHP
模仿JQuery sortable效果 代码有错但值得看看
2009/11/05 Javascript
JavaScript 垃圾回收机制分析
2013/10/10 Javascript
js 浏览本地文件夹系统示例代码
2013/10/24 Javascript
javascript遍历控件实例详细解析
2014/01/10 Javascript
jquery实现鼠标滑过小图查看大图的方法
2015/07/20 Javascript
所见即所得的富文本编辑器bootstrap-wysiwyg使用方法详解
2016/05/27 Javascript
javascript实现的上下无缝滚动效果
2016/09/19 Javascript
深入理解requestAnimationFrame的动画循环
2016/09/20 Javascript
vue-router跳转页面的方法
2017/02/09 Javascript
详解Vue webapp项目通过HBulider打包原生APP
2018/06/29 Javascript
webpack4+express+mongodb+vue实现增删改查的示例
2018/11/08 Javascript
vue读取本地的excel文件并显示在网页上方法示例
2019/05/29 Javascript
vue中实现高德定位功能
2019/12/03 Javascript
jQuery实现高度灵活的表单验证功能示例【无UI】
2020/04/30 jQuery
Vue 修改网站图标的方法
2020/12/31 Vue.js
python基础教程之缩进介绍
2014/08/29 Python
Python语言实现机器学习的K-近邻算法
2015/06/11 Python
Pycharm无法显示动态图片的解决方法
2018/10/28 Python
Python获取航线信息并且制作成图的讲解
2019/01/03 Python
Python实现监控Nginx配置文件的不同并发送邮件报警功能示例
2019/02/26 Python
将matplotlib绘图嵌入pyqt的方法示例
2020/01/08 Python
python实现磁盘日志清理的示例
2020/11/05 Python
HTML5中在title标题标签里设置小图标的方法
2020/06/23 HTML / CSS
html5实现输入框fixed定位在屏幕最底部兼容性
2020/07/03 HTML / CSS
《桂林山水》教学反思
2014/02/08 职场文书
一岗双责责任书
2014/04/15 职场文书
开学典礼策划方案
2014/05/28 职场文书
个人年终总结开头
2015/03/06 职场文书
2016年学校招生广告语
2016/01/28 职场文书
如何写好一份优秀的工作总结?
2019/06/21 职场文书
7个关于Python的经典基础案例
2021/11/07 Python