首页 > 作文

PHP 文件的相关操作

更新时间:2023-04-08 13:11:22 阅读: 评论:0

文件的打开和关闭

主要是两个函数,fopen和fclo。

fopen ( string $filename , string $mode [, bool $u_include_path = fal [, resource $context ]] ) : resource

返回至味在人间的是资源类型的数据
mode 打开模式:指的是文件打开是以写入、读取、执行等等方式

r:(只读模式)以只读方式打开,文件指针指向文件的开头部分
r+:(读写模式)以读写方式打开,文件指针指向文件的开头

w:(只写模式)以写方式打开,指针指向文件头部,如果文件不存在,会创建一个新文件,如果文件存在,文件内容会被清空
w+:(写读模式),指针指向文件头部,如果文件不存在,会创建一个新文件,如果文件存在,文件内容会被清空,可以读取

a:以追加方式打开,指针指向文件末尾(只写),如果文件不存在,会创建一个新文件
a+:以追加方式打开,如果文件存在,指针指向文件末尾,(读写)如果文件不存在,会创建一个新文件

文件的读取

可以读取单个字符、一行、整个文件、读任意长度的数据。

1、读取整个文件:

不需要对文件打开与关闭

readfile()
readfile ( string $filename [, bool $u_include_path = fal [, resource $context ]] ) : int

读入一个文件并把它输出(output)到缓存中(buffer) 返回读取文件的字节数,错误则返回fal。

file()
file ( string $filename [, int $flags = 0 [, resource $context ]] ) : array

读取整个文件内容到一个数组,数组每个元素对应一行。

file_get_contents()
file_get_contents ( string $filename [, bool $u_include_path = fal [, resource $context [, int $offt = 0 [, int $maxlen ]]]] ) : string
将文件读入到一个字符串中,从 offt 开始,读取 maxlen 长度。该函数适用于二进制对象,是将整个文件内容读取到一个字符串中的首选方式

2、读取一行:

fgets() 读取一行数据
fgets ( resource $handle [, int $length ] ) : string

在读取指定长度 length 或碰到新行或碰到 eof 时结束。

fgetss()
fgetss ( resource $handle [, int $length [, string $allowable_tags ]] ) : string

是fgets()的变体,用于读取一行数据,不过 会过滤掉被读取内容的html和php标记,效果同strip_tags()

php 7.3.0 中,已被废弃,不推荐使用。

3、读取单个字符:

fgetc()

fgetc ( resource $handle ) : string

在对某一个字符进行查找、替换时,需要有针对性的对某个字符进行读取,那么我们就可以使用fgetc来实现

4、读取任意长度的字符:

fread()

fread ( resource $handle , int $length ) : string

读取汉字时,根据汉字的字节数避免出现乱码

文件的写入

fwrite()fputs()file_put_contents(filename,$str)
不需要打开关闭
相当于 fopen(“”,”w\w+”)->fwrite()->fclo()
第三个参数(file_append)可以实现追加功能

文件的其他操作

复制 copy
copy ( string $source , string $dest [, resource $context ] ) : bool
重命名 rename
文件或文件夹,可实现剪切功能
rename ( string $oldname , string $newname [, resource $context ] ) : bool
删除文件 unlink
unlink ( string $filename [, resource $context ] ) : bool
获取文件的大小 filesize
filesize ( string $filename ) : int
获取文件的绝对路径 realpath
realpath ( string $path ) : string

返回文件的绝对路径(盘符绝对路径)

获取文件的相关信息 stat
stat(“filename”)
返回一个数组,数组元素是文件的相关信息,包括文件大小、最后的修改时间等判断是否可写 is_writeable判断是否可读 is_readable判断是否是个文件 is_file判断某个文件或者目录是否存在 file_exists文件最后一次被访问的时间 fileatime
last access文修正值件最后一次修改的时间 filemtime
modification

文件指针的操作

php可以实现文件指针的定位和查询,从而实现所需信息的查询,文件指针有四个函数
rewind feof ftell fek

rewind(资源类型):重置指针的位置ftell(资源类型):返回文件读写指针所在的位置,整型值feof(资源类型):该函数判断文件指针是否指向文件末尾fek() 位移 距离
fek ( resource $handle , int $offt [, int $whence = ek_t ] ) : int

whence 可能的值
ek_t – t position equal to offt bytes.
ek_cur – t position to current location plus offt.
ek_end – t position to end-of-file plus offt.

文件锁 flock

在向一个文件写入内容时,需要先将文件锁定,以防止其他用户同时修改该文件。

flock ( resource $handle , int $operation [, int &$wouldblock ] ) : bool

operation
lock_sh: 取得剑雨经典台词共享锁
lock_ex: 取得独占锁 e分米用什么表示xclusive 排外
lock_un: 释放锁定
lock_nb: 防止flock()在锁定的时候堵塞 (防止多人同时锁定一个文件)

远程文件读取

在php中支持url格式的文件的调用
在php.ini中开启 allow_url_fop海风en = on

//readfile(文件地址):将文件内容读取到内存中

数据流(输出流):内存输出到屏幕的数据流
ob_start(): 开启输出流

ob_get_contents():得到输出流中缓冲的内容

ob_clean:关闭输出流
可以用来读取网络上的图片

本文发布于:2023-04-08 13:11:20,感谢您对本站的认可!

本文链接:https://www.wtabcd.cn/fanwen/zuowen/230fec8594d33499d1ac1d1d1f34d76b.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

本文word下载地址:PHP 文件的相关操作.doc

本文 PDF 下载地址:PHP 文件的相关操作.pdf

标签:文件   指针   内容   方式
相关文章
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2022 Comsenz Inc.Powered by © 专利检索| 网站地图