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)关闭文件 现有 ...
随机推荐
- ulimit -n 修改
Linux系统里打开文件描述符的最大值,一般缺省值是1024,对一台繁忙的服务器来说,这个值偏小,所以有必要重新设置linux系统里打开文件描述符的最大值.那么应该在哪里设置呢? [root@loca ...
- spring aop的五种通知类型
昨天在腾讯课堂看springboot的视频,老师随口提问,尼玛竟然回答错了.特此记录! 问题: Spring web项目如果程序启动时出现异常,调用的是aop中哪类通知? 正确答案是: 异常返回通知. ...
- [USACO12DEC]逃跑的BarnRunning Away From…
题意 给出以1号点为根的一棵有根树,问每个点的子树中与它距离小于等于l的点有多少个 题解 似乎有好多种做法啊……然而蒟蒻只会打打主席树的板子…… 调了一个上午一直WA……狠下心来重打一遍居然直接一遍过 ...
- 015_NGINX作为WebSocket Proxy的设置
产研那边有通过nginx代理进行长连接的需求,咱们都知道默认nginx只支持短连接的,使用长连接需要单独配置 一. websocket协议提供创建一种支持在server和client之前双向通信的we ...
- 功率 dbm 和 mw 的换算
射频知识; 功率/电平(dBm):放大器的输出能力,一般单位为w.mw.dBm.dBm是取1mw作基准值,以分贝表示的绝对功率电平. 换算公式:电平(dBm)=10lgw5W → 10lg5000 ...
- centos6.5环境利用scp实现自动化文件备份
centos6.5环境利用scp自动上传备份文件到指定服务器中 需要备份的主机 192.168.3.17 存放备份的主机 192.168.3.18 目的:将3.17主机上/data/storage的文 ...
- centos6.5生产环境编译安装nginx-1.11.3并增加第三方模块ngx_cache_purge、nginx_upstream_check、ngx_devel_kit、lua-nginx
1.安装依赖包 yum install -y gcc gcc-c++ pcre-devel openssl-devel geoip-devel 2.下载需要的安装包 LuaJIT-2.0.4.zip ...
- CentOS 6.5环境使用ansible剧本自动化部署Corosync + pacemaker环境及corosync常用配置详解
环境说明: 192.168.8.39 node2.chinasoft.com 192.168.8.42 node4.chinasoft.com 192.168.8.40 ansible管理服务器 19 ...
- RestTemplate的使用
1.postForObject :传入一个业务对象,返回是一个String 调用方: BaseUser baseUser=new BaseUser(); baseUser.setUserid(user ...
- Linux常用命令3(压缩和解压缩总结)
tar命令 解包:tar zxvf FileName.tar 打包:tar czvf FileName.tar DirName gz命令 解压1:gunzip FileName.gz 解压2:gzip ...