第8章
PHP文件应用PHP文件应用
烟台南山
软件工程
本章主要内容
使用PHP打开文件;打开文件;使用打开文件使用PHP读取文件内容;使用读取文件内容;读取文件内容使用PHP删除文件;删除文件;使用删除文件PHP对目录的操作;对目录的操作;对目录的操作关于文件上传;关于文件上传;
第8章PHP文件应用PHP文件应用
2
判断文件是否存在
boolfile_exists(string):判断文件是否存在。参数string为一个指向文件或目录的字符型变量。若文件或目录存在,则返回True,否则返回False。
该函数的文件名参数不能为远程文件。例file_exists(http://www.sohu.com/index.mdb),不论文件存在与否都将返回False。
第8章PHP文件应用PHP文件应用
3
访问文件属性
intfilesize(string):获取文件的大小。参数string为一个指向文件或目录的字符型变量。stringfiletype(string):获取文件的类型。参数string为一个指向文件或目录的字符型变量。函数的返回值有fifo、chardirblocklinkfileunknownchar、dir、block、link、file和unknown。intfilemtime(string):返回文件上次被修改的时间(Unix时间戳)。intfileatime(string):返回文件上次被访问的时间。intfileperms(string):获取文件的权限。函数的文件名
参数不能为远程文件。
第8章PHP文件应用PHP文件应用
4
";echo$filename."的类型为:".filetype($filename)."
";echo$filename."的修改时间为:".date("Y年n月t日",filemtime($filename))."
";echo$filename."的访问时间为:".date("Y年n月t日",fileatime($filename))."
";echo$filename."的权限为:".fileperms($filename)."
";?>
第8章PHP文件应用PHP文件应用
5
打开/打开/关闭文件
打开文件resourcefopen(stringfilename,stringmode):参数filename为要打开的文件名;参数mode为打开模式,即读、写或追加等。若函数执行成功,则返回一个文件句柄(在后续的文件操作函数中将要用到),失败则返回False。注意:用户只能以只读模式打开互联网上的URL;以只读方式打开的文件是不能执行写入操作的。Windows
系统下使用\r\n作为行结束字符。关闭文件booleanfclose(resourcefp):参数fp为要关闭的文件句柄。
第8章PHP文件应用PHP文件应用
6
读写方式
第8章PHP文件应用PHP文件应用
7
第8章PHP文件应用PHP文件应用
8
读取文件相应字符
stringfgetc(resourcehandle):函数从文件句柄为handle的文件中读取一个字符。若到文件末尾则返回False。若读取的文件中有html代码,则对其进行解释执行。
第8章PHP文件应用PHP文件应用
9
按行返回文件内容
stringfgets(resourcefp[,intlength]);该函数从文件句柄为fp的文件中读取长度为length-1的字符串。在遇到换行符或到达文件末尾时读取过程会停止。它会翻译执行
HTML代码。若没有指定length,则默认为1K,即1024字节。
";while(!feof($fd)){$buffer=fgets($fd,10);echo$buffer;}fclose($fd);?>
第8章PHP文件应用PHP文件应用
10
按行返回文件内容去除HTML标记按行返回文件内容去除HTML标记
stringfgetss(resourcefp[,intlength]);该函数与fgets函数是完全一致的,但它不会对HTML代码翻译执行。boolfeof(resourcehandle):判断文件指针是否到了文件结束的位置。
";while(!feof($fd)){$buffer=fgetss($fd,10);echo$buffer;}fclose($fd);?>
第8章PHP文件应用PHP文件应用
11
从文件中读取字符串
stringfread(resourcehandle,intlength);该函数从文件句柄为handle的文件中读取长度最多为length的字符串。
第8章PHP文件应用PHP文件应用
12
读取整个文件到数组变量中
arrayfile(stringfilename[,intuse_include_path[,resourcecontext]]);该函数可以一次性读取整个文件,它返回一个数组。数组的每个元素对应于文件的每一行,包括换行符在内。该函数读取时无需先打开文件。stringimplode(string,array):使用指定的字符串,把一个数组链接为一个字符串。
$line)echo"行号
{$line_num}:".htmlspecialchars($line)."
";$html=implode('',file('data.txt'));echo"