您的当前位置:首页正文

文件处理

2022-03-15 来源:易榕旅网
文件处理........................................................................................................................................... 2

文件类型 ................................................................................................................................... 2 文件属性 ................................................................................................................................... 2 文件目录相关函数 ................................................................................................................... 2

文件的操作 ....................................................................................................................... 2 文件路径 ................................................................................................................................... 3 文件打开关闭(读写) ........................................................................................................... 3 文件内指针移动 ....................................................................................................................... 4 文件的锁定机制 ....................................................................................................................... 4 目录处理........................................................................................................................................... 4

目录的创建 ............................................................................................................................... 4 目录的删除 ............................................................................................................................... 4 目录的复制 ............................................................................................................................... 4 移动或重命名目录 ................................................................................................................... 4 目录的遍历 ............................................................................................................................... 5 统计目录大小 ........................................................................................................................... 5 文件上传下载 ................................................................................................................................... 5

文件上传 ................................................................................................................................... 5

单个上传: ....................................................................................................................... 5 多个上传: ....................................................................................................................... 6 文件配置: ............................................................................................................................... 6 注意事项: ............................................................................................................................... 7 文件下载 ................................................................................................................................... 7

文件处理

文件类型

filetype(\"目录或文件名\");

is_div(目录或文件名); ?目录 is_executable(~); ?可执行 is_file(~); ?正常文件 is_link(~); ?连接符号 is_readable(~); ?可读

is_uploaded(~); ?通过HTTP POST上传 is_writable(~); ?可写 is_writeable(~);

文件属性

file_exists(); ?存在 filesize(); 大小 is_readable(); ?可读 is_writrable(); ?可写 filetime(); 创建时间 filemtime(); 修改时间 filectame(); 最后访问时间 stat(); 状态 返回数组

文件目录相关函数

文件的操作(创建,移动,删除,移动,复制,重命名)

创建文件 touch(“文件名”); 删除文件 unlink(“url”); 移动,重命名文件 rename(“当前路径”,“目标目录”); 复制文件 copy(\"当前\目标\"); 权限设计函数: chgrp 改变文件所属的组 chmod 改变文件模式 chown 改变文件的所有者 filegroup 取得文件的组

fileowner 取得文件的所有者

例子 chomd(\"/aa/index.php\ _rwxrwxrwx 文件拥有者 读r 4 写w 2 执行x 1 (7 7 7) 文件拥有者所在的组 其他用户的这个文件的权限

文件路径

相对路径: . 当前目录 .. 上一级目录 绝对路径: 根路径: /根路径 在服务器中执行(通过php文件处理函数)路径 是操作系统的根程序下载到 客户端,再访问服务器中的文件时,只有通过Apache访问,则是文档的根路 径

basename(url); 文件名 dirname(url); 目录名

pathinfo(url); 路径信息 返回数组

文件打开关闭(读写)

读取: file_get_contests(); 全部读取 例子:file_get_contests(\"test.tst\"); file_get_contests(\"http://www.163.cpm\"); arr file(url); 全部读取 把一行做一个数组元素 readfile(url); 全部读取并直接输出 fope(); fclose(文件资源):关闭文件资源 fread(文件资源,长度); 读取指定字符 fgetc(文件资源); 读取单个字符 fgets(文件资源); 读取一行字符 feof(文件资源); 如果读取文件出错或读取为完毕返回真。 写入: file_put_contests(); 覆盖模式 例子 file_put_contests(\"test1.txt\ fopen(\"url\模式[rb]\"); 返回类型为文件资源模式:

r r+(可写,文件不存在出错)

w(只写,覆盖) w+(除了写也可以读) a(只写,追加) a+(除了写也可以读) b t(文本) fwrite(文件资源,\"内容\") fputs(); 本地文件 ./tsxt.txt 读取

远程文件 http://www.baidu.com 读取 ftp://user@pass:www.baidu.com/index.php 写入

文件内指针移动

ftell(文件资源) 返回当期文件指针的位置 fseek($file,10,SEEK_END); SEEK_SET 开始位置 SEEK_CUT 当前位置 SEEK_END 末位置

rewind($file); 回到文件头部;

文件的锁定机制

flock($file,LOCK_SH); LOCK_SH 读取加锁 LOCK_EX 写入加锁 LOCK_UN 读写加锁,解锁

目录处理

目录的创建

mkdir(资源); 创建一个空目录

目录的删除

rmdir($file); 删除空目录

目录的复制

需要自己创建函数

移动或重命名目录

rename($file/原url,'目标url');

目录的遍历

chdir(资源); 改变目录 chroot($dirname): 改变根目录 dir(资源); directory类

* closedir(资源); 关闭目录 getcwd(资源); 获得当前目录

* opendir(资源); 打开目录句柄

* readdir(资源); 读取目录中的条目(文件夹,文件) * rewinddir(资源); 倒回目录句柄 scandir(资源);列出指定路径的文件和目录

统计目录大小

文件上传下载

文件上传 单个上传:

多个上传:

文件配置:

file_uploads=on;

upliad_max_filesize=2M; 最大不要超过内存 upload_tmp_dir= url; 临时上传路径 post_max_size=250; post上传大小

注意事项:

表单的提交方法必须为 post 变淡上传使用type为file的表单 必须将enctype=\"multipart/form-data\" 只有文件上传时才使用该值,用来指定表单编码的数据方式 如果是文件上传的数据使用$_FILE接受文件,非上传的用$_POST接受

文件下载

*使用header()函数将下载文件设置为服务器无法识别的文件即可下载 *herder(\"Content-Disposition:atttachment; filename=\"mytwo.html\") 将文件设置为附件进行下载 *header()前不能有任何输出信息 *header(\"Content-Type:text/html;charset=utf-8\"); 将服务器发送的代码以utf-8格式输出 *header(\"Content-Type:text/html\"); 申明格式 *header(\"Content-length:20000\"); 申明大小

发送响应过程: 请求: http 1.1 协议 版本 头信息 将表单信息提交给服务器 响应: 状态 200 ok 404没找到 响应头信息 数据发送回网页

*header(\"Location:two.html\"); 页面跳转

* 也可以实现页面跳转 并无诸多限制

因篇幅问题不能全部显示,请点此查看更多更全内容