php文件系统处理方法小结
本文总结分析了php文件系统处理方法。分享给大家供大家参考,具体如下:
文件类型
以Linux为模型的,在Windows只能获取file,dir或unknow三种类型
在Linux/Unix下,block,char,dir,fifo,file,link,unknown7种型
block:块设置文件,磁盘分区,软驱,cd-rom等
char:字符设备,I/O(输入输出中)以字符为单位的设备,例如键盘,打印机等
dir: 目录也是文件的一种/目录文件
fifo:信息管道,从一个程序传输到另一个进程
file:普通的文件类型如文本文件,可执行文件
link:链接文件,相当于windows下的快捷方式
unknown :未知类型
1.文件属性处理函数
filetype("目录或文件名")获取类型
is_dir--判断给定文件名是否是一个目录
is_file--判断给定文件名是否为一个正常的文件
is_link--判断给定文件名是否为一个符号连接
is_executable();--判断给定文件名是否可执行
file_exists();--文件是否存在
filesize();--返回文件大小
is_readable();--文件是否可读
is_writeable();--文件是否可写
filectime();--文件创建时间
filemtime();--文件修改时间
fileactime();--文件最后访问时间
stat();--文件状态,返回关于给定文件的信息的数组
boolftruncate(resourcehandle,intsize);
接受文件指针handle作为参数,并将文件大小截取为size。如果成功则返回TRUE,失败则返回FALSE。
boolrename(stringoldname,stringnewname[,resourcecontext]);
2.目录
目录属性
*basename(url[,扩展名]);//返回文件名 *dirname(url);//目录名 *pathinfo(url);//路径信息
例子:
$path="/var/www/html/page.php"; echobasename($path);//返回page.php echobasename($path,".php");//page echodirname($paht);///var/www/html $arr=pathinfo($paht); $arr["dirname"]///var/www/html $arr["basename"]//page.php $arr["extension"]//.php
遍历目录
opendir(url); readdir(url);//返回当前目录指针只为的一个文件名,并将目录指针向后移动一位 closedir(url); rewinddir(url);//把目录指针重置到开始处
统计目录大小
统计目录的大小只能建立递归函数把目录的文件都加起来;
统计磁盘大小可以使用disk_free_space(url);和disk_total_space(url);
建立和删除目录
mkdir(url);//建立目录 rmdir(url);//删除空目录 unlink(url);//删除文件
删除非空目录只能自己建立递归函数;
复制目录
copy($scrfile,$to);//复制文件
得自定义递归函数实现目录复制功能
3.文件的基本操作
fopen(url); fclose(url);
写入文件
intfwrite(resourehandle,strintstring[,intlength]);
返回写入的字符数或是FALSE
fputs()是fwrite()的别名
intfile_put_contents(stringfilename,stringdata[,intflags[,resourcecontext]]);
和依次调用fopen(),fwrite()以及fclose()功能一样。
读取文件
stringfread(resourcehandle,intlength);
从文件指针handle读取最多length个字节。该函数在读取完length个字节数,或到达EOF的时候
stringfile_get_contents(stringfilename[,booluse_include_path[,resourcecontext[,intoffset[,intmaxlen]]]]); arrayfile(stringfilename[,intuse_include_path[,resourcecontext]]);
数组中的每个单元都是文件中相应的一行,包括换行符在内。
stringfgets(resourcehandle[,intlength]); stringfgetc(resourcehandle); intreadfile(stringfilename[,booluse_include_path[,resourcecontext]]);
读入一个文件并写入到输出缓冲。
如果访问远程文件,必须在php的配置文件中激活"allow_url_fopen"选项,才能使用fopen()函数打开远程文件
使用FTP协议连接远程文件的时,只可以用“只读”或“只写”模式打开文件。
移动文件指针
intftell(resourcehandle);
返回由handle指定的文件指针的位置,也就是文件流中的偏移量。
intfseek(resourcehandle,intoffset[,intwhence]);
在与handle关联的文件中设定文件指针位置。新位置,从文件头开始以字节数度量,是以whence指定的位置加上offset。whencede值定义为:
SEEK_SET-设定位置等于offset字节。
SEEK_CUR-设定位置为当前位置加上offset。
SEEK_END-设定位置为文件尾加上offset。(要移动到文件尾之前的位置,需要给offset传递一个负值。)
boolrewind(resourcehandle);
将handle的文件位置指针设为文件流的开头
更多关于PHP相关内容感兴趣的读者可查看本站专题:《php文件操作总结》、《PHP运算与运算符用法总结》、《PHP网络编程技巧总结》、《PHP基本语法入门教程》、《php操作office文档技巧总结(包括word,excel,access,ppt)》、《php日期与时间用法总结》、《php面向对象程序设计入门教程》、《php字符串(string)用法总结》、《php+mysql数据库操作入门教程》及《php常见数据库操作技巧汇总》
希望本文所述对大家PHP程序设计有所帮助。