pho文件操作
一、php文件操作
1、readfile - 适用于打开一个文件并读取文件的内容
echo readfile('e:/webdictionary.txt');
2、fopen('文件名','打开模式') - 打开文件
打开模式:
r - 只读
w - 只写,如果文件不存在会自动创建(这是跟 r 不同的地方),文件指针指向开头,即如果文件存在会覆盖原文件。
a - 只写,如果文件不存在会自动创建,如果文件存在,文件指针指向文件末尾,即新写入的内容会添加到文件的末尾
x - 只写,如果文件不存在会自动创建,如果文件存在,会报错,文件指针指向文件开头。
b - 打开一个二进制文件
t - windows的文本转换标记,可以透明的将 \n 转成 \r\n.
注:b 和 t 要依赖于前面的 4 种情况来使用
3、fclose('已经打开了的文件') - 关闭文件
4、fwrite('接收方','给予方') - 想文件中写入内容(给予方必须是一个string)
5、feof('已经打开了的文件') - 判断是否到了文件的末尾
6、fgets('已经打开了的文件') - 从已经打开了的文件中读取单行
7、特殊函数




//将文件截取指定的长度
ftruncate ( resource $handle , int $size ) blool
//取得文件的 inode 修改时间,即文件的权限,所有者,所有组或其它 inode 中的元数据
filectime ( string $filename ) : int
//取得文件的上次访问时间,比如上次读取文件了文件
fileatime ( string $filename ) : int
//取得文件修改时间,即文件被写入。
filemtime ( string $filename ) : int
/*取得文件类型,返回值有如下 7 种类型:
file(文件),
dir(目录),
fifo(命名管道,常用于将信息从一个进程传输到另一个进程),
char(字符设备文件,值在I/O传输过程中以字符为单位进行传输的设备,例如键盘,打印机),
block(块设备文件),
link( 符号链接,是指向文件指针的指针,类似Windows中的快捷方式),
unknown(未知类型)
*/
filetype ( string $filename ) : string


//文件锁定
flock ( resource $handle , int $operation ) : bool
//operation 可以是以下值之一:
//LOCK_SH 取得共享锁定(读取的程序)。
//LOCK_EX 取得独占锁定(写入的程序。
//LOCK_UN 释放锁定(无论共享或独占) //返回文件指针读/写的位置
ftell ( resource $handle ) : int //在文件指针中定位
fseek ( resource $handle , int $offset [, int $whence = SEEK_SET ] ) : int
//offset:偏移量,要移动到文件尾之前的位置,需要给 offset 传递一个负值,并设置 whence 为 SEEK_END。
//whence :
//SEEK_SET - 设定位置等于 offset 字节。
//SEEK_CUR - 设定位置为当前位置加上 offset。
//SEEK_END - 设定位置为文件尾加上 offset。 //倒回文件指针的位置
rewind ( resource$handle) : bool
8、访问远程文件需要在php.ini里面开启 allow_url_fopen

经典示例1:
$file1 = fopen('e:/file1.txt','r');
$file2 = fopen('e:/file2.txt','w');
while(!feof($file1)){
fwrite($file2,fgets($file1));
}
fclose($file1);
fclose($file2);
经典示例2:
// a.txt,b.txt都是1G大小,要把a.txt复制给b.txt的末尾,
function copyAToB(){
$file_a = fopen('a.txt','r');
$file_b = fopen('b.txt','a');
while($str = fread($file_a,)){
fwrite($file_b,$str);
}
fclose($file_a);
fclose($file_b);
}
copyAToB('a.txt','b.txt');
二、php目录操作
1、常用函数

//当我们用opendir()打开一个文件后,操作这个文件句柄,操作完了之后,可以用该函数将句柄指向文件开头。
rewinddir()
经典示例3:遍历目录,并输出该目录下的所有文件

本文为袋鼠学习中的总结,如有转载请注明出处:https://www.cnblogs.com/chrdai/p/6373301.html
pho文件操作的更多相关文章
- 【.NET深呼吸】Zip文件操作(1):创建和读取zip文档
.net的IO操作支持对zip文件的创建.读写和更新.使用起来也比较简单,.net的一向作风,东西都准备好了,至于如何使用,请看着办. 要对zip文件进行操作,主要用到以下三个类: 1.ZipFile ...
- 野路子出身PowerShell 文件操作实用功能
本文出处:http://www.cnblogs.com/wy123/p/6129498.html 因工作需要,处理一批文件,本想写C#来处理的,后来想想这个是PowerShell的天职,索性就网上各种 ...
- Node基础篇(文件操作)
文件操作 相关模块 Node内核提供了很多与文件操作相关的模块,每个模块都提供了一些最基本的操作API,在NPM中也有社区提供的功能包 fs: 基础的文件操作 API path: 提供和路径相关的操作 ...
- 归档NSKeyedArchiver解归档NSKeyedUnarchiver与文件管理类NSFileManager (文件操作)
========================== 文件操作 ========================== 一.归档NSKeyedArchiver 1.第一种方式:存储一种数据. // 归档 ...
- SQL Server附加数据库报错:无法打开物理文件,操作系统错误5
问题描述: 附加数据时,提示无法打开物理文件,操作系统错误5.如下图: 问题原因:可能是文件访问权限方面的问题. 解决方案:找到数据库的mdf和ldf文件,赋予权限即可.如下图: 找到mdf ...
- 通过cmd完成FTP上传文件操作
一直使用 FileZilla 这个工具进行相关的 FTP 操作,而在某一次版本升级之后,发现不太好用了,连接老是掉,再后来完全连接不上去. 改用了一段时间的 Web 版的 FTP 工具,后来那个页面也 ...
- Linux文件操作的主要接口API及相关细节
操作系统API: 1.API是一些函数,这些函数是由linux系统提供支持的,由应用层程序来使用,应用层程序通过调用API来调用操作系统中的各种功能,来干活 文件操作的一般步骤: 1.在linux系统 ...
- C语言的fopen函数(文件操作/读写)
头文件:#include <stdio.h> fopen()是一个常用的函数,用来以指定的方式打开文件,其原型为: FILE * fopen(const char * path, c ...
- Python的文件操作
文件操作,顾名思义,就是对磁盘上已经存在的文件进行各种操作,文本文件就是读和写. 1. 文件的操作流程 (1)打开文件,得到文件句柄并赋值给一个变量 (2)通过句柄对文件进行操作 (3)关闭文件 现有 ...
随机推荐
- angularjs入门(二)
angularJs是一个mvc模式, m-model-->当前视图中可用的数据, v-view--> HTML. c-controller-->即 JavaScript 函数,可以添 ...
- Android中PopupWindow用法
参考资料链接:http://developer.android.com/reference/android/widget/PopupWindow.html 在Android中有很多级别的Window, ...
- 队列queue 代码
import queue q=queue.Queue(3) #队列:先进先出 q.put(1) q.put(2) q.put(3) q.put(4) print(q.get()) print(q.ge ...
- 前端组件库 - 搭建web app常用的样式/组件等收集列表(移动优先)
0. 前端自动化(Workflow) 前端构建工具 Webpack - module bundler Yeoman - a set of tools for automating developmen ...
- MySQL CPU 使用率高的原因和解决方法
用户在使用 MySQL 实例时,会遇到 CPU 使用率过高甚至达到 100% 的情况.本文将介绍造成该状况的常见原因以及解决方法,并通过 CPU 使用率为 100% 的典型场景,来分析引起该状况的原因 ...
- 【ES】学习5-全文搜索
全文搜索两个最重要的方面是:相关性, 分析. 一旦谈论相关性或分析这两个方面的问题时,我们所处的语境是关于查询的而不是过滤. match:单个词查询 GET /my_index/my_type/_se ...
- python 全栈开发,Day126(创业故事,软件部需求,内容采集,显示内容图文列表,MongoDB数据导入导出JSON)
作业讲解 下载代码: HBuilder APP和flask后端登录 链接:https://pan.baidu.com/s/1eBwd1sVXTNLdHwKRM2-ytg 密码:4pcw 如何打开APP ...
- python 全栈开发,Day50(Javascript简介,第一个JavaScript代码,数据类型,运算符,数据类型转换,流程控制,百度换肤,显示隐藏)
一.Javascript简介 Web前端有三层: HTML:从语义的角度,描述页面结构 CSS:从审美的角度,描述样式(美化页面) JavaScript:从交互的角度,描述行为(提升用户体验) Jav ...
- 《剑指offer》-找到数组中重复的数字
题目描述 在一个长度为n的数组里的所有数字都在0到n-1的范围内. 数组中某些数字是重复的,但不知道有几个数字是重复的.也不知道每个数字重复几次.请找出数组中任意一个重复的数字. 例如,如果输入长度为 ...
- ElasticSearch - match vs term
match vs term 这个问题来自stackoverflow https://stackoverflow.com/questions/23150670/elasticsearch-match-v ...