欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

php常用函数2--文件操作

程序员文章站 2022-05-10 19:51:32
...

php常用函数2--文件操作

一、文件类型
1.filetype()
获取文件类型函数,参数为字符串(路径+文件名)
返回值为字符串,file(普通文件),dir(目录)或unknown(未知文件)
2.is_file() is_dir()
判断是否是该类型,返回布尔值
二、文件属性(以下函数参数均为文件名)
1.file_exists() 检查文件或目录是否存在
2.filesize() 取得文件大小,出错返回false
3.is_readable() 是否可读
4.is_writable() 是否可写
5.is_executable() 是否可执行
6.filectime() 获取创建时间
7.filemtime() 获取修改时间
8.fileatime() 获取访问时间
9.stat() 获取文件大部分属性值
10.clearstatcache() 清除被PHP缓存的该文件信息
三、解析目录
1.basename(path,[suffix])返回路径中的文件名部分,第二个参数为扩展名(如"php"或".php"),如给出则返回值中不再有扩展名
2.dirname(path) 返回去掉文件名后的目录名
3.pathinfo()返回一个关联数组,包括dirname(目录名),basename(基本名),extension(扩展名)
四、遍历目录
1.opendir() 打开指定目录,返回可供其他目录函数使用的目录句柄。失败返回false
2.readdir()读取指定目录,参数为目录句柄,返回当前目录指针位置的一个文件名,并将指针后移一们。没有更多文件返回false
3.closedir() 关闭指定目录,参数为目录句柄
4.rewinddir() 倒回目录句柄,参数为目录句柄,将目录指针重置到开始处
五、建立和删除目录
1.mkdir() 建立新目录,参数为目录名
2.rmdir() 删除目录,被删除的只能是空目录,如非空,则必须先进入目录,将其中的文件用unlink()函数删除
六、复制或移动目录
1.复制:php中无特定函数,必须先新建目录mkdir(),再使用copy()函数复制每个文件。
2.移动:先复制,后删除原目录
七、文件打开与关闭
1.fopen(filename,mode[,use_include_path[,zcontext]])打开文件,参数为文件名,文件模式,第三个参数可选,设为1会使PHP考虑配置指令include_path中指定的路径,第四个参数可选,设置允许文件名称以协议名称开始,如http://。返回文件指针,失败返回false。
模式总结:
r 只读
r+ 读写
w 只写(文件存在,则删除原有数据,文件不存在,则创建这个文件)
w+ 读写(同w)
x 写入(文件存在,返回false,文件不存在则创建,仅本地)
x+ 读写(同x)
a 写入(指针指向文件尾,文件不存在则创建)
a+ 写入(同a)
b 二进制模式
t 文本模式
2.fclose() 关闭
八、操作文件内容
1.fwrite(handle,string[,length])写入字符串。\n\r为行结束字符。返回写入的字符数,失败返回false.
2.fread(handle,length) 读取打开的文件
3.file_get_contents() 将文件读入字符串
4.fgets(handle[,length]) 返回一行
5.fgetc() 返回字符
6.file() 把文件读入一个数组,每行为一个元素。
7.readfile() 读取一个文件,输出到输出缓冲
8.feof() 判断是否到达文件结束处,是则返回true
9.file_get_contents()
10.访问远程文件:配置文件中激活"allow_url_fopen"选项,set_time_limit()函数控制程序运行时间可避免超时错误。
九、移动文件指针
1.ftell(handle) 返回文件指针当前位置
2.fseek(handle,offset[,whence]) 移动文件指针到由offset参数指定位置。
参数三:SEEK_CUR 当前位置加上第二个参数把提供的字节;
SEEK_END EOF加上offset字节,此时,offset必须为负值;
SEEK_SET offset字节处,与无此参数效果相同;
成功返回0,失败返回-1。如以a或a+打开,总是附加在后面,不管文件指针位置。
3.rewind(handle) 移动到文件开关
十、文件锁定机制(防止多用户同时访问同一文件造成文件混乱)
1.flock(handle,operation[,&wouldblock])文件锁定操作,参数二:LOCK_SH 共享锁定,读取数据时使用;LOCK_EX 独占锁定,写入数据使用;LOCK_UN释放锁定;LOCK_NB 附加锁定,防止锁定时堵塞。参数三:设为1时,锁定期间阻止其他进程。
十、文件复制、删除等
1.copy(本源文件,目的文件) 复制
2.unlink(目标文件) 删除文件
3.ftruncate(目标文件资源,截取长度) 将文件截断到指定长度
4.rename(旧文件名,新文件名) 重命名文件或目录
十一、文件上传与下载
1.全局数组$_FILES
$_FILES["myfile"]["name"] 原名称,含扩展名
$_FILES["myfile"]["size"] 已上传文件大小,单位为字节
$_FILES["myfile"]["tmp_name"] 上传后临时文件名
$_FILES["myfile"]["error"]0:成功;1:大小超出PHP配置文件限制;2:大小超出表单限制;3:文件上载不完整;4:没有上载任何文件
$_FILES["myfile"]["type"] 获取上传文件的MIME类型
2.is_uploaded_file() 判断是否是通过HTTPPOST上传的
3.move_uploaded_file() 将上传的文件从临时位置移动到新位置
4.下载头信息处理
header('Content-Type:image/gif'); MIME类型
header('Content-Disposition:attachment;filename="test.gif"');头信息,附件和文件名
header('Content-Length:3390'); 大小
readfile('test.gif');
相关标签: android