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 获取目录下的图片并随机显示的代码
Dec 28 PHP
常见的PHP五种设计模式小结
Mar 23 PHP
深入理解require与require_once与include以及include_once的区别
Jun 05 PHP
使用php伪造referer的方法 利用referer防止图片盗链
Jan 20 PHP
php中mail函数发送邮件失败的解决方法
Dec 24 PHP
phpQuery让php处理html代码像jQuery一样方便
Jan 06 PHP
php-redis中的sort排序函数总结
Jul 08 PHP
PHP实现的mysql操作类【MySQL与MySQLi方式】
Oct 07 PHP
thinkphp中U方法按路由规则生成url的方法
Mar 12 PHP
PHP检查文件是否存在,不存在自动创建及读取文件内容操作示例
Jan 23 PHP
laravel框架路由分组,中间件,命名空间,子域名,路由前缀实例分析
Feb 18 PHP
Thinkphp 框架扩展之类库扩展操作详解
Apr 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
天使彦史上最神还原,性别曝光的那一刻,百万网友恋爱了
2020/03/02 国漫
PHP学习之数组的定义和填充
2011/04/17 PHP
fetchAll()与mysql_fetch_array()的区别详解
2013/06/05 PHP
PHPMailer的主要功能特点和简单使用说明
2014/02/17 PHP
php通过两层过滤获取留言内容的方法
2016/07/11 PHP
javascript window对象属性整理
2009/10/24 Javascript
js getBoundingClientRect() 来获取页面元素的位置
2010/11/25 Javascript
javascript定时变换图片实例代码
2013/03/17 Javascript
jQuery toggleClass应用实例(附效果图)
2014/04/06 Javascript
jQuery中:disabled选择器用法实例
2015/01/04 Javascript
JavaScript通过事件代理高亮显示表格行的方法
2015/05/27 Javascript
总结AngularJS开发者最常犯的十个错误
2016/08/31 Javascript
js图片放大镜效果实现方法详解
2020/10/28 Javascript
IScroll那些事_当内容不足时下拉刷新的解决方法
2017/07/18 Javascript
jquery实现限制textarea输入字数的方法
2017/09/06 jQuery
JS实现方形抽奖效果
2018/08/27 Javascript
微信小程序实现时间预约功能
2018/11/27 Javascript
基于JS抓取某高校附近共享单车位置 使用web方式展示位置变化代码实例
2019/08/27 Javascript
简单谈谈javascript高级特性
2019/09/04 Javascript
浅谈Node新版本13.2.0正式支持ES Modules特性
2019/11/25 Javascript
Python中optionParser模块的使用方法实例教程
2014/08/29 Python
python对html代码进行escape编码的方法
2015/05/04 Python
深入解析Python编程中JSON模块的使用
2015/10/15 Python
Python压缩解压缩zip文件及破解zip文件密码的方法
2015/11/04 Python
python中pip的使用和修改下载源的方法
2019/07/08 Python
Python for循环与getitem的关系详解
2020/01/02 Python
阿联酋网上花店:Ferns N Petals
2018/02/14 全球购物
密封类可以有虚函数吗
2014/08/11 面试题
农业大学毕业生的个人自我评价
2013/10/11 职场文书
教师应聘个人求职信
2013/12/10 职场文书
行政监察建议书
2014/05/19 职场文书
校庆口号
2014/06/20 职场文书
党支部培养考察意见
2015/06/02 职场文书
2019年国庆祝福语(70句)
2019/09/19 职场文书
Python捕获、播放和保存摄像头视频并提高视频清晰度和对比度
2022/04/14 Python
Mysql将字符串按照指定字符分割的正确方法
2022/05/30 MySQL