PHP怎么打开或者关闭文件?
什么是文件处理?
文件处理包括读取,关闭,重写等。掌握文件的处理需要读者理清思路,掌握好文件处理的关键步骤和常用函数,那么就可以运用自如了!感兴趣的请移步php文件处理专题。
比如,访问一个文件需要 3 步:打开文件,读写文件以及关闭文件。其他对文件的操作要么是包含在读写文件中(如显示内容,写入内容等),要么与文件自身的属性有关系(如文件遍历,文件改名等)。那么从这篇文章开始将对常用的文件处理技术进行详细介绍。
今天这篇文章我们先来介绍一下打开/关闭文件,打开文件和关闭文件使用 fopen()函数和 fclose()函数。打开文件应该格外小心,因为一不小心就会有把文件内容全部删除的可能。
一:打开文件
对文件进行操作的时候,我们首先要做的就是打开文件,这是进行数据存取的第一步。在PHP中使用 fopen()函数打开文件,fopen()函数的语法如下:
|
1
|
resource fopen ( string $filename , string $mode [, bool $use_include_path = false [, resource $context]] ) |
参数 filename 是要打开包含路径的文件名,可以使相对路径,也可以是绝对路径。如果没有任何前缀侧表示打开的事本地文件,参数 mode 是打开文件的方式,可以去的值如下:
| mode | 模式名称 | 说明 |
| r | 只读 | 读模式—进行读取,文件指针位于文件的开头 |
| r+ | 读写 | 读写模式—进行读写,文件指针位于文件的开头。在现有文件的内容的末尾之前进行写入就会覆盖原有的 |
| W | 只写 | 写模式—进行写入文件,文件指针指向头文件。如果文件存在,则所有文件内容被删除,否则函数将创建这个文件 |
| w+ | 读写 | 读写模式—进行读写,文件指针指向头文件。如果文件存在,则所有文件内容被删除,否则函数将创建这个文件 |
| x | 谨慎写 | 写模式打开文件,从文件头开始写。如果文件已经存在,则该文件将不会被打开,函数返回false,PHP将产生一个警告 |
| x+ | 谨慎写 | 读/写模式打开文件,从文件头开始写。如果文件已经存在,则该文件将不会被打开,函数返回false,PHP将产生一个警告 |
| a | 追加 | 追加模式打开文件,文件指针指向尾文件,如果该文件已有内容,则将从文件末尾开始追加,如果该文件不存在,则函数将创建这个文件 |
| a+ | 追加 | 追加模式打开文件,文件指针指向头文件,如果该文件已有内容,则将从文件末尾开始追加或者读取,如果该文件不存在,则函数将创建这个文件 |
| b | 二进制 | 二进制模式—用于与其他模式进行连接。如果文件系统能够区分二进制文件和文本文件,可能会使用它。Windows可以区分;UNIX则不区分,推荐使用这个选项,便于获得最大程度的可移植性。它是默认模式 |
| t | 文本 | 用于与其他模式的结合。这个模式只是 Windows下的一个选项 |
第三个参数 use_include_path 是可选的,该参数在配置文件 php.ini 中指定一个路径,如F:\AppServ\www\mess.php,如果希望服务器在这个路径下打开所指定的文件,可以将其值上设置为 1 或者 true。
二:关闭文件
对文件的操作结束后应该关闭这个文件,否则可能会引起错误。在 PHP 中使用 fclose()函数关闭文件,该函数的语法格式如下;
|
1
|
bool fclose ( resource $handle ) |
该函数将参数 handle 指向的文件关闭,如果成功,那么返回true,否则返回false。其中的文件指针必须是有效的,并且是通过 fopen()函数成功打开的文件。
具体我们看下下面的示例代码:
|
1
2
3
4
5
6
|
<?phpheader("Content-Type:text/html; charset=utf-8");$f_open = fopen("../file.txt","rb"); // 打开文件................. //这里是对文件进行操作fclose($f_open) //操作完成后关闭文件?> |
PHP怎么打开或者关闭文件?的更多相关文章
- Python打开和关闭文件
Python打开和关闭文件: open(文件名,打开文件的模式[,寄存区的缓冲]): 文件名:字符串值 注:文件名带有后缀名 # 打开创建好的 test.txt 文件 f = open("t ...
- linux文件操作篇 (二) 打开和关闭文件
2.1 打开文件和关闭文件 #include <sys/types.h>#include <sys/stat.h>#include <fcntl.h> 头文件 i ...
- perl 打开和关闭文件
#!/usr/bin/perl -w use strict; #print "please input a string\n"; #my $line = <STDIN> ...
- [Python] python3 文件操作:从键盘输入、打开关闭文件、读取写入文件、重命名与删除文件等
1.从键盘输入 Python 2有两个内置的函数用于从标准输入读取数据,默认情况下来自键盘.这两个函数分别是:input()和raw_input(). Python 3中,不建议使用raw_input ...
- 深入理解计算机操作系统——第10章:UNIX IO,打开,关闭,读写文件
系统级IO:输入输出是主存与外部设备(磁盘,终端,网络)之间拷贝数据的过程 输入:从IO设备拷贝数据到主存中 输出:从主存中拷贝数据到IO设备中 10.1 unix IO 所有的IO设备都被模型化为文 ...
- VB Open 函数详解 打开、关闭、读、写文件
(一)打开和关闭文件 1.顺序文件 打开顺序文件,我们可以使用Open语句.它的格式如下:Open pathname For [Input |Output |Append] As [ ...
- java io流(字符流) 文件打开、读取文件、关闭文件
java io流(字符流) 文件打开 读取文件 关闭文件 //打开文件 //读取文件内容 //关闭文件 import java.io.*; public class Index{ public sta ...
- C++学习47 文件的概念 文件流类与文件流对象 文件的打开与关闭
迄今为止,我们讨论的输入输出是以系统指定的标准设备(输入设备为键盘,输出设备为显示器)为对象的.在实际应用中,常以磁盘文件作为对象.即从磁盘文件读取数据,将数据输出到磁盘文件.磁盘是计算机的外部存储器 ...
- Linux C 文件与目录2 文件的打开与关闭
文件的打开与关闭 open和close 文件的打开指的是从磁盘中找到一个文件,返回一个整形的打开文件顺序的编号.打开的文件处于可读.可写状态.文件的关闭指的是释放打开的文件,是文件处于不可读写的状态. ...
随机推荐
- 'utf8' codec can't decode byte 0xd1 in position 931: invalid continuation byte解决方法
有时候,我得到这样的字符œ导致的UnicodeDecodeError错误. 我需要能够使串的UTF-8有或没有这些字符. 在工作中,经常遇到,读取一个文件,或者是从网页获取一个问题,明明看着是gb23 ...
- python rsa 加密解密 (编解码,base64编解码)
最近有需求,需要研究一下RSA加密解密安全:在网上百度了一下例子文章,很少有文章介绍怎么保存.传输.打印加密后的文本信息,都是千篇一律的.直接在一个脚本,加密后的文本信息赋于变量,然后立马调用解密.仔 ...
- GCC命令
一. 常用编译命令选项 源程序test.c 1. 无选项编译链接用法:#gcc test.c作用:将test.c预处理.汇编.编译并链接形成可执行文件.这里未指定输出文件,默认输出为a.out. 2. ...
- php文件管理与基础功能的实现
文件的基本操作 先来看一下PHP文件基础操作,请看强大注释 <body> <?php var_dump(filetype("./img/11.png")); // ...
- RPC漏洞
DCOM漏洞:利用这个漏洞攻击者只需发送特殊形式的清求到远程计算机上的135端口,轻则会造成拒绝服务攻击,严重的甚至可以让远程攻击者以本地管理员权限执行任何操作. 攻击过程:扫描也可用xscan+DC ...
- php多进程编程详解
php多进程编程 前言 php单进程存在的问题: 多核处理器未充分利用,而单处理器通常需要等待其他操作完成之后才能再继续工作. 任何现代操作系统都可在幕后执行多任务,这意味着在很短时间内,计算机可以调 ...
- Unity利用Sapi进行windows语音开发
软件中的语音技术主要包含两种:语音识别speech recognition和语音合成speech synthesis.一般地,开发者会因为技术实力和资金实力等各方面的问题无力完成专业的语音引擎,因此通 ...
- build.gradle代码
Android Studio 这么强大的工具,就算我们不懂 gradle, groovy, 也照样能借助AS对 Android 项目进行编译.调试.运行.打包等操作.build.gradle 这个文件 ...
- 关于SQL调优(Distinct 和 Exits)
今天写了一段查询人员Id和人员编号的,由于需要从其他的表中取条件,因为人员表和另外的表对应的是一对多的关系,所以我使用了Distinct关键字对用户编号进行去重复,然后发现那个效率简直没法看,然后旁边 ...
- IOS开发创建开发证书及发布App应用(七)——在iTunes创建填写应用基本信息
7.在iTunes创建填写应用基本信息 依旧打开苹果的开发者网站 https://developer.apple.com/ 点击Member,如下图 (注意,下面的图示是登录之后的) 点击iTunes ...