我是靠谱客的博主 包容铅笔,最近开发中收集的这篇文章主要介绍细说PHP(十)10.1 文件系统概述10.2 目录的基本操作10.3 文件的基本操作10.4 文件的上传与下载,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

第十章 文件系统处理

  • 10.1 文件系统概述
    • 10.1.1 文件类型
    • 10.1.2 文件的属性
  • 10.2 目录的基本操作
    • 10.2.1 解析目录路径
    • 10.2.2 遍历目录
    • 10.2.3 统计目录大小
    • 10.2.4 建立和删除目录
    • 10.2.5 复制目录
  • 10.3 文件的基本操作
    • 10.3.1 文件的打开与关闭
    • 10.3.2 写入文件
    • 10.3.3 读取文件内容
    • 10.3.4 访问远程文件
    • 10.3.5 移动文件指针
    • 10.3.6 文件锁定机制
    • 10.3.7 文件的一些基本操作函数
  • 10.4 文件的上传与下载
    • 10.4.1 文件上传
    • 10.4.2 处理多个文件上传
    • 10.4.3 文件下载

10.1 文件系统概述

10.1.1 文件类型

文件类型描 述
Block块文件设备,如某个磁盘分区,软驱、光驱CD-ROM等
Char字符设备,指在I/O传输过程中以字符为单位进行传输的设备,如键盘,打印机的等
Dir目录类型,目录也是文件的一种
Fifo命名管道,常用于将信息从一个进程传递到另一个进程
File普通文件类型,如文本文件或可执行文件等
Link符号链接,是指向文件指针的指针,类似Windows中的快捷方式
Unknow未知类型

10.1.2 文件的属性

函数名作用参数返回值
file_exists()检查文件或目录是否存在文件名文件存在返回true,否则返回false
filesize()取得文件大小文件名返回文件大小的字节数,出错返回false
is_readable()判断给定文件名是否可读文件名如果文件存在且可读返回true
is_writable()判断给定文件名是否可写文件名如果文件存在且可读写返回true
is_executable()判断给定文件名是否可执行文件名如果文件存在且可执行返回true
filectime()获取文件创建时间文件名返回UNIX时间戳
filemtime()获取文件修改时间文件名返回UNIX时间戳
fileatime()获取文件访问时间文件名返回UNIX时间戳
stat()获取文件大部分属性值文件名返回关于给定文件有用信息的数组

10.2 目录的基本操作

10.2.1 解析目录路径

  1. basename() 返回路径中文件名部分
  2. dirname() 返回一个包含有指向一个文件的全路径的字符串
  3. pathinfo() 返回一个关联数组,包括路径中的目录名,基本名和扩展名

10.2.2 遍历目录

函数作用参数返回值
opendir()打开指定目录目录的路径及目录名目录句柄(资源类型)
readdr()读取指定目录目录句柄目录指针位置的一个文件名,并将目录指针后移一位,当指针处于目录结尾时,返回FALSE
closedir()关闭目录目录句柄无返回值,运行后将关闭打开目录
rewinddir()倒回目录句柄目录句柄将目录指针重置到开始处,即倒回目录的开头

10.2.3 统计目录大小

10.2.4 建立和删除目录

函数作用
mkdir()创建目录
rmdir()删除目录(必须是空目录)
unlink()删除文件

10.2.5 复制目录

10.3 文件的基本操作

10.3.1 文件的打开与关闭

1.fopen()
resource fopen ( string filename, string mode [,bool use_include_path [, resource zcontext]])

  • 第一个参数为被打开文件的URL
  • 第二个参数为文件模式
  • 第三个参数为是否使用include_path中指定的路径
  • 第四个参数为协议名称
模式字符描述
r只读方式打开,从文件头开始读
r+读写方式打开文件,从文件头开始读写
w只写方式打开文件,从文件头开始写
w+读写方式打开文件,从文件开头开始写
x创建并以写入方式打开,将文件指针指向文件头
x+创建并以读写方式打开,将文件指针指向文件头
a写入方式打开,并将文件指针指向文件末尾
a+写入方式打开,并将文件指针指向末尾
b以二进制模式打开文件,用于与其他模式进行连接
t以文本模式打开文件

2.fclose()

关闭文件,一旦完成资源的处理,一定要将其关闭,否则可能会出现一些预料不到的错误

10.3.2 写入文件

int fwrite(resource handle,string string [,int length])

  • 第一个参数需提供fopen()函数打开的文件资源
  • 第二个参数为写入文件的字符串
  • 第三个参数为指定写入的字符串长度

10.3.3 读取文件内容

函数描述
fread()读取打开的文件
file_get_contents()将文件读入字符串
fgets()从打开的文件中返回一行
fgetc()从打开的文件中返回字符
file()把文件读入一个数组中
readfile()读取一个文件,并输出到缓冲

10.3.4 访问远程文件

  • 必须激活PHO的"allow_url_fopen"选项才能使用fopen()打开远程文件
  • 文件名为"scheme://的格式"
  • 为避免超时,可使用set_time_limit()对程序运行时间加以限制

10.3.5 移动文件指针

函数描述
ftell返回文件指针的当前位置
fseek移动文件指针到指定的位置
rewind移动文件指针到文件的开头

10.3.6 文件锁定机制

当一个进程在访问文件时加上锁,其它进程想要对该文件进行访问,则必须等到锁定被释放以后。这样就可以避免在并发访问同一个文件时破坏数据

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

10.3.7 文件的一些基本操作函数

函数语法结构描述
copy()copy(来源文件,目的文件)复制文件
unlink()unlink(目标文件)删除文件
fruncate()fruncate(目标文件资源,截取长度)将文件截断到指定的长度
rename()rename(旧文件名,新文件名)重命名文件或目录

10.4 文件的上传与下载

10.4.1 文件上传

1.客户端上传设置
2.在服务器端通过PHP处理文件

  • PHP配置文件中与文件上传有关的选项
指令名默认值功能描述
file_uploadsON确定服务器上的PHP脚本是否可以接受HTTP文件上传
upload_max_filesize2M限制PHP处理上传文件大小的最大值
post_max_size8M限制通过POST方法可以接受信息的最大值
upload_tmp_dirNULL上传文件存放的临时路径

10.4.2 处理多个文件上传

10.4.3 文件下载

最后

以上就是包容铅笔为你收集整理的细说PHP(十)10.1 文件系统概述10.2 目录的基本操作10.3 文件的基本操作10.4 文件的上传与下载的全部内容,希望文章能够帮你解决细说PHP(十)10.1 文件系统概述10.2 目录的基本操作10.3 文件的基本操作10.4 文件的上传与下载所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(47)

评论列表共有 0 条评论

立即
投稿
返回
顶部