如何在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 将excel导入mysql
Nov 09 PHP
php绝对路径与相对路径之间关系的的分析
Mar 03 PHP
php allow_url_include的应用和解释
Apr 22 PHP
解析php中用PHPMailer来发送邮件的示例(126.com的例子)
Jun 24 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 PHP
php实现用于计算执行时间的类实例
Apr 18 PHP
开启PHP Static 关键字之旅模式
Nov 13 PHP
PHP设计模式之观察者模式实例
Feb 22 PHP
PHP基于socket实现客户端和服务端通讯功能
Jul 13 PHP
PHP使用栈解决约瑟夫环问题算法示例
Aug 27 PHP
PHP 文件上传限制问题
Sep 01 PHP
Laravel Eloquent分表方法并使用模型关联的实现
Nov 25 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在字符串中查找指定字符串并删除的代码
2008/10/02 PHP
PHP函数之error_reporting(E_ALL ^ E_NOTICE)详细说明
2011/07/01 PHP
php中mysql模块部分功能的简单封装
2011/09/30 PHP
PHP加密函数 Javascript/Js 解密函数
2013/09/23 PHP
php连接与操作PostgreSQL数据库的方法
2014/12/25 PHP
php批量删除cookie的简单实现方法
2015/01/26 PHP
浅谈PHP中静态方法和非静态方法的相互调用
2016/10/04 PHP
基于jquery的跟随屏幕滚动代码
2012/07/24 Javascript
UpdatePanel和Jquery冲突的解决方法
2013/04/01 Javascript
一个判断抢购时间是否到达的简单的js函数
2014/06/23 Javascript
Javascript this 关键字 详解
2014/10/22 Javascript
Jquery实现仿腾讯娱乐频道焦点图(幻灯片)特效
2015/03/06 Javascript
浅析JavaScript访问对象属性和方法及区别
2015/11/16 Javascript
php 修改密码实现代码
2017/05/24 Javascript
基于JavaScript实现飘落星星特效
2017/08/10 Javascript
jQuery中的类名选择器(.class)用法简单示例
2018/05/14 jQuery
element-ui中select组件绑定值改变,触发change事件方法
2018/08/24 Javascript
Vue 框架之键盘事件、健值修饰符、双向数据绑定
2018/11/14 Javascript
vue实现图片上传预览功能
2019/12/23 Javascript
vue使用lodop打印控件实现浏览器兼容打印的方法
2021/02/07 Vue.js
Python性能优化技巧
2015/03/09 Python
Django 前后台的数据传递的方法
2017/08/08 Python
Python线性回归实战分析
2018/02/01 Python
对python中数组的del,remove,pop区别详解
2018/11/07 Python
python实现猜拳小游戏
2020/04/05 Python
Django多数据库联用实现方法解析
2020/11/12 Python
英国莱斯特松木橡木家具网上商店:Choice Furniture Superstore
2019/07/05 全球购物
Clarks鞋澳大利亚官方网站:Clarks Australia
2019/12/25 全球购物
《在家里》教后反思
2014/03/01 职场文书
美容院经理岗位职责
2014/04/03 职场文书
化学专业自荐信
2014/05/28 职场文书
支行行长岗位职责
2015/02/15 职场文书
幼儿园教师暑期培训心得体会
2016/01/09 职场文书
英语版自我评价,35句话轻松搞定
2019/10/08 职场文书
为什么MySQL不建议使用SELECT *
2022/04/03 MySQL
MySQL数据库事务的四大特性
2022/04/20 MySQL