PHP文件读写操作之文件写入代码


Posted in PHP onJanuary 13, 2011

在PHP网站开发中,存储数据通常有两种方式,一种以文本文件方式存储,比如txt文件,一种是以数据库方式存储,比如Mysql,相对于数据库存储,文件存储并没有什么优势,但是文件读写操作在基本的PHP开发中还是时有使用,今天和大家分享如何利用PHP技术实现文件读写之文件写入操作教程,也算是对PHP文件读写操作的入门学习。

将数据写入文件的操作主要涉及三个步骤及部分文件操作函数如下:

1、打开文件(文件操作函数:fopen)

2、写入文件(文件操作函数:fwrite等)

3、关闭文件(文件操作函数:fclose)

下面通过文件读写操作代码实例教程来讲解

基本的PHP文件写入操作函数fopen、fwrite、fclose应用教程

<? 
@$fp = fopen("leapsoulcn.txt","w"); 
if(!$fp){ 
echo "system error"; 
exit(); 
}else { 
$fileData = "domain"."\t"."www.leapsoul.cn"."\n"; 
$fileData = $fileData."description"."\t"."PHP网站开发教程网,面向PHP初学者的PHP教程网。"."\n"; 
$fileData = $fileData."title"."\t"."本文主要讲述PHP文件读写操作中最基本的文件写入教程。"; 
fwrite($fp,$fileData); 
fclose($fp); 
} 
?>

注释:在这段文件读写操作实例代码中,主要功能是在文件写入两行文字。
知识点:

1、使用fopen函数打开文件,在应用fopen函数准备打开文件时,你首先需要明确:

打开文件干什么?是读文件中的数据呢,还是将数据写入文件,亦或者读写文件?

另外你需要考虑如果文件中已经存在相关数据,你是覆盖原有文件中的数据呢,还是仅仅将新数据添加至文件末尾

这些问题涉及到PHP文件读写操作中的fopen函数中的文件模式的应用,fopen函数原型如下:

fopen(filename,mode,include_path,context)

调用文件操作函数fopen()时,通常需要传递两个或三个参数。

filename:规定要打开的文件或URL。可以指定文件的绝对路径,Windows一般为C:\,Unix为/,通过URL,你也可以打开远程文件。在这里写入的文件与PHP文件写入代码文件我放在同一个目录。

mode:规定要求到该文件/流的访问类型。即打开文件的模式。

include_path:可选项。如果需要在include_path中搜索文件的话,可以将该参数设为1或TRUE。

常用的fopen的文件操作模式说明

”r” - 以只读方式打开文件,从文件头开始读。

”r+” - 以读写方式打开文件。

”w” - 以写入方式打开文件,从文件头开始写。如果文件不存在则尝试创建,如果文件存在,则先删除文件中的内容。

”w+” - 以读写方式打开文件,从文件头开始读写。如果文件不存在则尝试创建,如果文件存在,则先删除文件中的内容。

”a” - 以写入方式打开,从文件末尾开始追加写。如果文件不存在则尝试创建。

”a+” - 以读写方式打开,从文件末尾开始追加写写或者读。如果文件不存在则尝试创建。

注意:在进行文件读写操作时,你一定要确保打开的文件具有相应的读写权限,否则fopen会报错。你可以使用@来抑制产生的错误,然后合理处理错误。

2、在使用文件操作函数fopen打开文件后,需要通过对变量赋值,然后写到$fp指向的文件指针中去,在上述PHP文件写入操作教程实例中,我使用的是一行一行存储,即换行储存,主要通过\n作为换行分隔符。

fwrite文件写入函数原型如下:

fwrite(fp,string,length)

在这里你也可以使用文件写入函数fputs,其是fwrite的别名函数,功能与用法与fwrite一样。

在文件写入函数fwrite中length是可选项,主要用来设定写入文件的最大字符数,如果设定了这个参数,fwrite会按设定的length,在指定文件中写入规定长度的字符。fwrite()返回写入文件的字符数,出现错误时则返回false。

在文件写入操作完成后,需要关闭文件句柄,否则会占用系统资源等。可以使用fclose($fp)函数来完成这件事。文件关闭成功则返回true,否则返回false。

至此文件写入操作就完成了。

以上是PHP文件读写操作教程之文件写入操作的最基本应用,除了文件写入操作,在PHP网站开发中经常需要读取相关的文件内容,文件读写操作函数中可以使用不同的函数实现对文件的读操作。下次将分下如何读取文件。

PHP 相关文章推荐
别人整理的服务器变量:$_SERVER
Oct 20 PHP
global.php
Dec 09 PHP
PHP5.2下chunk_split()函数整数溢出漏洞 分析
Jun 06 PHP
使用PHP遍历文件夹与子目录的函数代码
Sep 26 PHP
php Ubb代码编辑器函数代码
Jul 05 PHP
php中配置文件操作 如config.php文件的读取修改等操作
Jul 07 PHP
PHP取二进制文件头快速判断文件类型的实现代码
Aug 05 PHP
php和jquery实现地图区域数据统计展示数据示例
Feb 12 PHP
在WordPress中使用PHP脚本来判断访客来自什么国家
Dec 10 PHP
Zend Framework教程之路由功能Zend_Controller_Router详解
Mar 07 PHP
Laravel框架中Blade模板的用法示例
Aug 30 PHP
PHP获取对象属性的三种方法实例分析
Jan 03 PHP
PHP文件读写操作之文件读取方法详解
Jan 13 #PHP
PHP目录函数实现创建、读取目录教程实例
Jan 13 #PHP
PHP开发规范手册之PHP代码规范详解
Jan 13 #PHP
PHP JSON格式数据交互实例代码详解
Jan 13 #PHP
PHP学习笔记之二 php入门知识
Jan 12 #PHP
php算开始时间到过期时间的相隔的天数
Jan 12 #PHP
php数据库密码的找回的步骤
Jan 12 #PHP
You might like
php环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
2006/11/17 PHP
实现了一个PHP5的getter/setter基类的代码
2007/02/25 PHP
Linux Apache PHP Oracle 安装配置(具体操作步骤)
2013/06/17 PHP
PHP 字符串长度判断效率更高的方法
2014/03/02 PHP
Windows下的PHP安装文件线程安全和非线程安全的区别
2014/04/23 PHP
PHP开发中csrf攻击的简单演示和防范
2017/05/07 PHP
用Div仿showModalDialog模式菜单的效果的代码
2007/03/05 Javascript
JavaScript中的集合及效率
2010/01/08 Javascript
情人节之礼 js项链效果
2012/02/13 Javascript
javascript批量修改文件编码格式的方法
2015/01/27 Javascript
javaScript基础详解
2017/01/19 Javascript
纯js实现动态时间显示
2020/09/07 Javascript
浅谈nodejs中的类定义和继承的套路
2017/07/26 NodeJs
js仿微信抢红包功能
2020/09/25 Javascript
vue实现与安卓、IOS交互的方法
2018/11/02 Javascript
详解jQuery获取特殊属性的值以及设置内容
2018/11/14 jQuery
详解使用React制作一个模态框
2019/03/14 Javascript
小程序封装wx.request请求并创建接口管理文件的实现
2019/04/29 Javascript
js如何实现元素曝光上报
2019/08/07 Javascript
Vuex中实现数据状态查询与更改
2019/11/08 Javascript
JS数组及对象遍历方法代码汇总
2020/06/16 Javascript
element-plus一个vue3.xUI框架(element-ui的3.x 版初体验)
2020/12/02 Vue.js
[02:20]2014DOTA2西雅图邀请赛 MVP外卡赛首胜采访
2014/07/09 DOTA
[02:25]专访DOTA2负责人Erik 国际邀请赛暂不会离开西雅
2014/07/21 DOTA
python脚本实现统计日志文件中的ip访问次数代码分享
2014/08/06 Python
python函数的5种参数详解
2017/02/24 Python
python3学生名片管理v2.0版
2018/11/29 Python
python判断正负数方式
2020/06/03 Python
Python pickle模块常用方法代码实例
2020/10/10 Python
详解HTML5新增标签
2017/11/27 HTML / CSS
创伤外科专业推荐信范文
2013/11/19 职场文书
导师就业推荐信范文
2014/05/22 职场文书
2014党员批评和自我批评思想汇报
2014/09/21 职场文书
2014年专项整治工作总结
2014/11/17 职场文书
2014年乡镇纪委工作总结
2014/12/19 职场文书
Java实战之用Swing实现通讯录管理系统
2021/06/13 Java/Android