鉴于大家对PHP十分关注,我们编辑小组在此为大家搜集整理了“PHP 文件系统详解”一文,供大家参考学习!
文件处理函数
1.文件操作.
打开文件:
打开指定的文件时会返回相应的对象,若不存在指定的文件,那麽可能会自动创建这个文件。
resource fopen(string filename,string mode [,int use_include_path][,resource context]);
filename 可以是包含文件路径的文件名,也可以是某种协议给出的URL(打开远程文件).为了避免系统切换带来的麻烦,采用''/''作为路径分隔符.
mode: 设置打开文件的方式,分别有:
r:只读模式,文件指针位于文件头部.
r+:只读模式----读/写模式,文件指针位于头部文件.注意可能产生覆盖.
w:只写模式,文件指针位于文件头部.如果文件存在,删除内容重写;否则,自行创建文件.
w+:只写模式----读写文件,读/写文件指针指向文件头部.如果文件存在,删除内容重写;否则,自行创建文件.
x:谨慎写----写模式打开文件,从文件头部开始写如.如果文件存在,返回false,产生一个E_WARNING级别的错误信息
x+:谨慎写---读写模式代开文件.如果文件存在,返回false,产生一个E_WARNING级别的错误信息
a:追加,文件指针指向文件尾部.如果文件存在,则直接在文件尾追加;否则,自行创建文件.
a+:追加,文件指针指向文件尾部.如果文件存在,则直接在文件尾追加或者读取;否则,自行创建文件.
b:二进制模式.用于与其他模式进行
链接.(windows 下的选项)
t: 用于与其他模式进行结合.(windows 下的选项)
请慎用fopen()函数,因为一不小心就有可能将文件删除掉.同时,不同的操作系统具有不同的行结束习惯(UNIX:\n Windows:\r\n Macinitosh:\r).如果错误的使用行结束符,那么当打开文件时,可能输出一堆乱码.以上可以通过"''t''","''b''"来避免.
读取文件:
string fgetc(resource handle);//返回从handle指向的文件中的一个字符.如果遇到EOF,则返回false;
string fgets(int handle[,int length]);//从文件指针指向的位置获取一行字符,并且返回最大为length-1个字节的字符串..文件指针必须有效,且指向一个由fopen()或fsockopen()成功打开的文件.length表示读取的数据的长度.在遇到换行,EOF,或者指定length时结束.忽略length将读到行结束.
string fgetss(resource handle[,int length][,string allowable_tags]);//读取一行,且过滤掉html,php标记.
string fread(int handle,int length);//从文件中读取任意长度的数据。,还可以用于读取二进制文件。handle 为指向文件的资源,length 读取length个字节或者遇到EOF时停止执行。
例子:
复制代码 代码如下:
<?php
$filename="./files.text";
$fp=fopen($finename,"rb");
$encho fread($fp,100);
?>
readfile(),file()和file_get_contents()函数.
readfile(),file()和file_get_contents()函数.
int readfile(string filename[,bool use_include_path,resource context]);//读取一个文件并写入到缓冲区,如果成功,则返回读取的字节数,否则返回false。filename文件名。参数use_include_path控制是否支持在include_path中
搜索文件,true为支持。使用readfile函数不需要打开/关闭文件。
array file(string filename [,bool use_include_path[,resource context]]);//将整个文件的内容读取到数组中。如果成功,返回数组,数组中的每个元素都是文件中对应的一行,包活换行符在内;否则返回false;
string file_get_contents(string filename[,bool use_include_path[,resource context[,int offset[,int max