PHP中读写文件实现代码


Posted in PHP onOctober 20, 2011

在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简单实现快速排序的方法
Apr 04 PHP
php中session_id()函数详细介绍,会话id生成过程及session id长度
Sep 23 PHP
php简单日历函数
Oct 28 PHP
全新Mac配置PHP开发环境教程
Feb 03 PHP
PHP实现数据分页显示的简单实例
May 26 PHP
PHP获取IP地址所在地信息的实例(使用纯真IP数据库qqwry.dat)
Nov 15 PHP
PHP用户管理中常用接口调用实例及解析(含源码)
Mar 09 PHP
PHP数组去重的更快实现方式分析
May 09 PHP
PHP封装的验证码工具类定义与用法示例
Aug 22 PHP
PHP html_entity_decode()函数讲解
Feb 25 PHP
PHP应用跨时区功能的实现方法
Mar 21 PHP
php将xml转化对象的实例详解
Nov 17 PHP
Array of country list in PHP with Zend Framework
Oct 17 #PHP
php环境配置之CGI、FastCGI、PHP-CGI、PHP-FPM、Spawn-FCGI比较?
Oct 17 #PHP
jQuery EasyUI API 中文文档 - DateBox日期框
Oct 15 #PHP
30 个很棒的PHP开源CMS内容管理系统小结
Oct 14 #PHP
比较简单实用的PHP无限分类源码分享(思路不错)
Oct 13 #PHP
php 错误处理经验分享
Oct 11 #PHP
php购物车实现代码
Oct 10 #PHP
You might like
php UTF-8、Unicode和BOM问题
2010/05/18 PHP
php url路由入门实例
2014/04/23 PHP
php实现的DateDiff和DateAdd时间函数代码分享
2014/08/16 PHP
php获取从百度、谷歌等搜索引擎进入网站关键词的方法
2015/07/08 PHP
php开发工具有哪五款
2015/11/09 PHP
PHP连接MSSQL方法汇总
2016/02/05 PHP
Thinkphp微信公众号支付接口
2016/08/04 PHP
tp5.1框架数据库子查询操作实例分析
2020/05/26 PHP
JavaScript Eval 函数使用
2010/03/23 Javascript
jquery悬浮提示框完整实例
2016/01/13 Javascript
seajs学习之模块的依赖加载及模块API的导出
2016/10/20 Javascript
Vue iview-admin框架二级菜单改为三级菜单的方法
2018/07/03 Javascript
Vue.js单向绑定和双向绑定实例分析
2018/08/14 Javascript
javacript replace 正则取字符串中的值并替换【推荐】
2018/09/13 Javascript
js中怎么判断两个字符串相等的实例
2019/01/17 Javascript
详解javascript replace高级用法
2019/02/17 Javascript
layer.prompt使文本框为空的情况下也能点击确定的方法
2019/09/24 Javascript
Python中的Matplotlib模块入门教程
2015/04/15 Python
简介Python设计模式中的代理模式与模板方法模式编程
2016/02/02 Python
Python实现将doc转化pdf格式文档的方法
2018/01/19 Python
对pandas中两种数据类型Series和DataFrame的区别详解
2018/11/12 Python
Python+pyplot绘制带文本标注的柱状图方法
2019/07/08 Python
Python中关于浮点数的冷知识
2019/09/22 Python
python实现批量文件重命名
2019/10/31 Python
Python编程快速上手——强口令检测算法案例分析
2020/02/29 Python
使用sklearn对多分类的每个类别进行指标评价操作
2020/06/11 Python
如何解决pycharm调试报错的问题
2020/08/06 Python
CSS3 rgb and rgba(透明色)的使用详解
2020/09/25 HTML / CSS
倩碧香港官方网站:Clinique香港
2017/11/13 全球购物
公司成本主管岗位责任制
2014/02/21 职场文书
小学生我的梦想演讲稿
2014/08/21 职场文书
个人授权委托书
2014/09/15 职场文书
2014校长四风问题对照检查材料思想汇报
2014/09/16 职场文书
党员批评与自我批评材料
2014/10/14 职场文书
大学学习委员竞选稿
2015/11/20 职场文书
详解Golang如何优雅的终止一个服务
2022/03/21 Golang