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与ASP
Oct 09 PHP
PHP4实际应用经验篇(4)
Oct 09 PHP
php入门教程 精简版
Dec 13 PHP
php短域名转换为实际域名函数
Jan 17 PHP
PHP中几个常用的魔术常量
Feb 23 PHP
phpize的深入理解
Jun 03 PHP
PHP图片处理之使用imagecopy函数添加图片水印实例
Nov 19 PHP
PHP获取数组最后一个值的2种方法
Jan 21 PHP
PHP的关于变量和日期处理的一些面试题目整理
Aug 10 PHP
Yii2实现上下联动下拉框功能的方法
Aug 10 PHP
php实现微信扫码自动登陆与注册功能
Sep 22 PHP
Thinkphp5 自定义上传文件名的实现方法
Jul 23 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
mysql 的 like 问题,超强毕杀记!!!
2007/01/18 PHP
php 随机记录mysql rand()造成CPU 100%的解决办法
2010/05/18 PHP
php下目前为目最全的CURL中文说明
2010/08/01 PHP
Session服务器配置指南与使用经验的深入解析
2013/06/17 PHP
PHP网页游戏学习之Xnova(ogame)源码解读(十五)
2014/06/30 PHP
javascript 必知必会之closure
2009/09/21 Javascript
js实现GridView单选效果自动设置交替行、选中行、鼠标移动行背景色
2010/05/27 Javascript
IE中createElement需要注意的一个问题
2010/07/13 Javascript
JSON 数字排序多字段排序介绍
2013/09/18 Javascript
js对table的td进行相同内容合并示例详解
2013/12/27 Javascript
JavaScript中的splice()方法使用详解
2015/06/09 Javascript
Jquery轮播效果实现过程解析
2016/03/30 Javascript
荐书|您有一份JavaScript书单待签收
2017/07/21 Javascript
js时间戳转yyyy-MM-dd HH-mm-ss工具类详解
2019/04/30 Javascript
JQuery表单元素取值赋值方法总结
2020/05/12 jQuery
[40:27]完美世界DOTA2联赛PWL S3 PXG vs GXR 第一场 12.19
2020/12/24 DOTA
python采用getopt解析命令行输入参数实例
2014/09/30 Python
在Python的Django框架中更新数据库数据的方法
2015/07/17 Python
Python txt文件加入字典并查询的方法
2019/01/15 Python
python tkinter实现界面切换的示例代码
2019/06/14 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
2019/06/18 Python
如何使用python爬虫爬取要登陆的网站
2019/07/12 Python
python实现简单聊天室功能 可以私聊
2019/07/12 Python
python接口自动化框架实战
2020/12/23 Python
python 通过exifread读取照片信息
2020/12/24 Python
iHerb台湾:维生素、保健品和健康产品
2018/01/31 全球购物
AT&T Wireless:手机、无限数据计划和配件
2018/06/03 全球购物
Looking4Parking美国:全球排名第一的机场停车比较品牌
2019/08/26 全球购物
六道php面试题附答案
2014/06/05 面试题
文明青少年标兵事迹材料
2014/01/28 职场文书
任命书格式
2014/06/05 职场文书
九寨沟导游词
2015/02/02 职场文书
齐云山导游词
2015/02/06 职场文书
个人优缺点总结
2015/02/28 职场文书
论语读书笔记
2015/06/26 职场文书
感恩教育主题班会
2015/08/12 职场文书