当前位置: 首页 > 后端技术 > PHP

php面试笔记(七)——php基础知识——文件和目录处理考点

时间:2023-03-29 21:36:53 PHP

本文是在MOOCJason老师的课程基础上对PHP面试知识点的总结和升华。如有侵权请联系我删除,邮箱:guoyugygy@163.com面试中,考官往往喜欢基础扎实的面试官,文件和目录处理相关的考点往往是大家的考点倾向于忽视。面试过程中文件和目录处理的注意事项。回头看真题,一直在hello.txt文件头部写一行“Helloworld”字符串,求完整答案代码:测试点分析文件的读写操作,以及扩展的目录操作函数,以及其他文件操作。文件相关的打开函数:fopen()函数用于打开一个文件。打开时需要指定打开方式"r"(以只读方式打开,文件指针指向文件头)"r+"(以读写方式打开,文件指针指向文件头)"w"(以写方式打开,清除文件内容,文件不存在则尝试创建)"w+"(以读写方式打开,清除文件内容,文件不存在则尝试创建)"a"(以写方式打开,将文件指针指向文件末尾进行写,如果文件不存在,则尝试创建)"a+"(以读写方式打开,将文件指针指向文件保存文件内容指向文件末尾的指针用于写入)"x"(创建一个新文件并打开它用于写入,如果文件已经存在则返回FALSE和错误)"x+"(创建一个新文件并打开它用于读写,如果文件已经存在则返回FALSE并报错Anerror)"b"(以二进制方式打开)writefunction:fwrite(file,string,length)file:指定要写入的文件string:指定要写入的内容写入长度:指定要写入的最大字节数(可选)fputs(file,string,length)fputs()函数是fwrite()函数的别名。读取函数:stringfread(resource$handle,int$length)handle:文件系统指针,通常是fopen()创建的资源(resource)。length:指定要读取的最大字节数。fgets(file,length)fgets()函数从文件指针读取一行。档案:必填。指定要读取的文件。长度:可选。指定要读取的字节数。默认值为1024字节。fgetc(file)fgetc()函数从文件指针读取一个字符。关闭函数:fclose(file)fclose()函数关闭打开的文件。不需要fopen()打开的函数:file_get_contents(path)file_get_contents()将整个文件读入一个字符串。file_put_contents(string$filename,mixed$data)file_put_contents()函数将字符串写入文件。杂项:file(path)file()函数将整个文件读入一个数组。数组中的每个元素都是文件中的对应行,包括换行符。readfile()readfile()函数读取文件并将其写入输出缓冲区。如果成功,该函数返回从文件中读取的字节数。失败时,该函数返回FALSE并显示一条错误消息。您可以通过在函数名称前加上“@”来隐藏错误输出。访问远程文件:在PHP.ini中将allow_url_fopen设置为On。HTTP协议连接只能使用只读,FTP协议可以使用只读和只写。目录相对名称relative:basename(path)basename()函数返回路径的文件名部分。dirname(path)dirname()函数返回路径的目录部分。pathinfo(path)pathinfo()函数以数组的形式返回文件路径的信息。目录读取:opendir(path):opendir()函数打开一个目录句柄。readdir(dir_handle):readdir()函数返回目录中下一个文件的文件名。closedir(dir_handle):closedir()函数关闭目录句柄。rewinddir(dir_handle);rewinddir()函数重置由opendir()创建的目录句柄。目录删除rmdir(dir)rmdir()函数删除一个空目录。目录创建mkdir(path)mkdir()函数创建一个目录。文件大小filesize(filename)filesize()函数返回指定文件的大小(以字节为单位)。目录大小disk_free_space(directory)disk_free_space()函数返回目录中的可用空间disk_total_space(directory)disk_total_space()函数返回指定目录的总磁盘大小。文件复制copy(file,to_file)copy()函数复制一个文件。档案:必填。指定要复制的文件。to_file:必需。指定复制文件的位置。删除文件:unlink(filename)unlink()函数删除文件。filetypefiletype(filename)filetype()函数返回指定文件或目录的类型。重命名文件或目录rename(oldname,newname)rename()函数重命名文件或目录。文件截断ftruncate(file,size)ftruncate()函数将文件截断到指定长度。文件属性file_exists(path)file_exists()函数检查文件或目录是否存在。is_readable(file)is_readable()函数判断指定的文件名是否可读。is_writable(file)is_writable()函数判断指定文件是否可写。is_executable(file)is_executable()函数检查指定文件是否可执行。fileatime(filename)filectime()函数返回指定文件的最后inode修改时间。fileatime(filename)fileatime()函数返回指定文件的最后访问时间。filemtime(filename)filemtime()函数返回文件内容的最后修改时间。文件锁flock(file,lock)flock()函数锁定或释放文件。要获取共享锁(读取的程序),将锁设置为LOCK_SH要获取独占锁(写入的程序),将锁设置为LOCK_EX要释放锁(无论是共享锁还是独占锁),如果不需要,请将锁设置为LOCK_UN如果flock()加锁时被阻塞,加LOCK_NB加锁。文件指针ftell(file)ftell()函数在打开文件中的当前位置。返回文件指针的当前位置。fseek(file,offset)fseek()函数在打开的文件中查找。此函数将文件指针从当前位置向前或向后移动到新位置,从文件开头开始以字节为单位测量。rewind(file)rewind()函数将文件指针的位置倒回到文件的开头。通过PHP函数遍历目录,编写程序answer:';如果(文件类型($dir.'/'.$file)=='dir'){loopdir($dir.'/'.$file);}}}closedir($handle);}loopdir('./');如果这篇博文对您有帮助,可以给冷月点赞或者关注哦!欢迎关注我的公众号:冷月前辈,获取独家学习资源和每日干货推送。如果你对我的专题内容感兴趣,也可以关注我的博客:guoyu7.com