细说PHP(十)

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 文件下载

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
申明:本资源来源于互联网,如有侵权,请联系本人或者CSDN进行删除,谢谢!细说PHP》开发Web应用程序PHP是最理想的工具,易于使用、功能强大、成本低廉、高安全性、开发速度快且执行灵活。《细说PHP》以实用为目标设计,包含PHP开发最主流的各项技术,对每一个知识点都进行了深入详细的讲解,并附有大量的实例代码,图文并茂。系统地介绍了PHP的相关技术及其在实际Web开发中的应用。 《细说PHP》共17章,每一章都是PHP独立知识点的总结。内容涵盖了PHP的运行环境搭建、Web服务器Apache的配置与应用、动态网站开发的前台技术、PHP编程语言的语法、PHP的常用功能模块和实用技巧、MySQL数据库的设计与应用、PHP 5面向对象的程序设计思想、Web开发的设计模式,以及包含DIV+CSS、mysqli扩展模块、数据库抽象层PDO、Smarty模板技术等目前PHP开发中最主流的技术。每一章中都有大量的实用示例,以及详尽的注释,加速读者的理解和学习,也为每章的技术点设置了大量的自测试题。最后以一个比较完整的、采用面向对象思想,以及通过MVC模式设计,并结合Smarty模板的CMS系统为案例,详细介绍了Web系统开发从设计到部署的各个细节,更好地进行开发实践。 申明:本资源来源于互联网,如有侵权,请联系本人或者CSDN进行删除,谢谢!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值