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 相关文章推荐
第十一节--重载
Nov 16 PHP
可定制的PHP缩略图生成程式(需要GD库支持)
Mar 06 PHP
PHP 程序员也要学会使用“异常”
Jun 16 PHP
洪恩在线成语词典小偷程序php版
Apr 20 PHP
用PHP实现 上一篇、下一篇的代码
Sep 29 PHP
php检测iis环境是否支持htaccess的方法
Feb 18 PHP
php截取字符串函数substr,iconv_substr,mb_substr示例以及优劣分析
Jun 10 PHP
PHP采用get获取url汉字出现乱码的解决方法
Nov 13 PHP
如何使用Gitblog和Markdown建自己的博客
Jul 31 PHP
ThinkPHP中where()使用方法详解
Apr 19 PHP
PHP新特性之字节码缓存和内置服务器
Aug 11 PHP
PHP如何通过表单直接提交大文件详解
Jan 08 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/04/09 魔兽争霸
PHP字符串长度计算 - strlen()函数使用介绍
2013/10/15 PHP
PHP中有关长整数的一些操作教程
2019/09/11 PHP
PHP Beanstalkd消息队列的安装与使用方法实例详解
2020/02/21 PHP
Javascript表达式中连续的 &amp;&amp; 和 || 之赋值区别
2010/10/17 Javascript
深入分析js中的constructor和prototype
2012/04/07 Javascript
jQuery快速上手:写jQuery与直接写JS的区别详细解析
2013/08/26 Javascript
浅析JavaScript中的CSS属性及命名规范
2013/11/28 Javascript
jquery让返回的内容显示在特定div里(代码少而精悍)
2014/06/23 Javascript
javascript操作字符串的原生方法
2014/12/22 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
详解AngularJS中的依赖注入机制
2015/06/17 Javascript
javascript实现九宫格相加数值相等
2020/05/28 Javascript
jQuery.uploadify文件上传组件实例讲解
2016/09/23 Javascript
微信小程序 Image API实例详解
2016/09/30 Javascript
使用vue.js实现checkbox的全选和多个的删除功能
2017/02/17 Javascript
Vue.js组件props数据验证实现详解
2019/10/19 Javascript
node.js文件的复制、创建文件夹等相关操作
2021/02/05 Javascript
Python使用os模块和fileinput模块来操作文件目录
2016/01/19 Python
Python Paramiko模块的使用实际案例
2018/02/01 Python
Django渲染Markdown文章目录的方法示例
2019/01/02 Python
python如何提升爬虫效率
2020/09/27 Python
python中xlrd模块的使用详解
2021/02/01 Python
韩国爱茉莉太平洋化妆品美国站:Amore Pacific US
2016/10/28 全球购物
亚瑟士美国官网:ASICS美国
2017/02/01 全球购物
德国高品质男装及配饰商城:Cultizm(Raw Denim原色牛仔裤)
2018/04/16 全球购物
意大利婴儿产品网上商店:Mukako
2018/10/14 全球购物
了解AppleTalk协议吗
2014/04/01 面试题
介绍下java.util.Arrays类
2012/10/16 面试题
《盘古开天地》教学反思
2014/02/28 职场文书
《九寨沟》教学反思
2014/04/08 职场文书
审计专业自荐信范文
2014/04/21 职场文书
2015年防汛工作总结
2015/05/15 职场文书
幼儿园小班班务总结
2015/08/03 职场文书
机关干部作风整顿心得体会
2016/01/22 职场文书
Python 中的单分派泛函数你真的了解吗
2021/06/22 Python