PHP文件流是一种在PHP中处理二进制数据的方法,它允许您打开、读取、写入和关闭文件,文件流提供了一种灵活的方式来处理大型文件,因为它不需要将整个文件加载到内存中,在PHP中,有两种类型的文件流:内置的文件流和包装器(也称为过滤器)。
内置的文件流是PHP核心的一部分,它们提供了一些基本的读写功能,以下是一些常用的内置文件流函数:
1、fopen():打开一个文件或网络资源。
2、fclose():关闭一个已打开的文件指针。
3、fread():从文件指针中读取最多length个字节。
4、fwrite():将字符串写入文件指针。
5、feof():检查文件指针是否到达文件末尾。
6、fgets():从文件指针中读取一行。
7、file_exists():检查文件或目录是否存在。
8、is_file():检查给定路径名是否为一个正常的文件。
9、is_dir():检查给定路径名是否为一个正常的目录。
10、rename():重命名一个文件或目录。
11、unlink():删除一个文件。
12、copy():复制文件。
13、move_uploaded_file():将上传的文件移动到新位置。
14、filesize():获取文件大小。
15、filetype():获取文件类型。
16、fileperms():获取文件权限。
17、fileowner():获取文件所有者。
18、filegroup():获取文件所属组。
19、fileatime():获取文件最后访问时间。
20、filemtime():获取文件最后修改时间。
21、filectime():获取文件状态更改时间。
22、fileinode():获取文件的inode号。
23、fileownership():设置文件所有者。
24、filegroupownership():设置文件所属组。
25、chmod():更改文件权限。
26、chown():更改文件所有者。
27、chgrp():更改文件所属组。
28、clearstatcache():清除文件状态缓存。
29、touch():更新文件访问和修改时间。
30、umask():设置当前用户的文件模式创建掩码。
31、mkdir():创建一个新目录。
32、rmdir():删除一个空目录。
33、glob():查找与模式匹配的文件路径名。
34、scandir():返回一个包含指定目录下所有文件和目录的数组。
35、opendir():打开一个目录句柄。
36、readdir():从目录句柄中读取条目。
37、closedir():关闭一个目录句柄。
38、link():创建一个硬链接或符号链接。
39、unlink():删除一个硬链接或符号链接。
40、realpath():返回指定路径的规范路径名。
41、dirname():返回路径中的目录部分。
42、basename():返回路径中的文件名部分。
43、pathinfo():解析路径信息并返回数组。
44、getcwd():返回当前工作目录。
45、chdir():改变当前工作目录。
46、rewind():重置文件指针的位置。
47、fseek():设置文件指针的位置。
48、ftell():获取当前文件指针的位置。
49、fseekable():检查文件指针是否可移动。
50、stream_set_blocking():设置阻塞/非阻塞模式。
51、stream_set_timeout():设置超时时间。
52、stream_set_write_buffer():设置写缓冲区大小。
53、stream_context_create():创建一个上下文选项数组。
54、stream_context_get_params():获取上下文选项数组的值。
55、stream_context_set_params():设置上下文选项数组的值。
56、stream_copy_to_stream():将数据从一个流复制到另一个流。
57、stream_get_contents():将整个流读入一个字符串。
58、stream_lock():锁定流,防止其他进程同时写入。
59、stream_unlock():解锁流,允许其他进程写入。
60、stream_set_option():设置流选项的值。
61、stream_get_option():获取流选项的值。
62、stream_wrapper_restore():恢复原始流操作函数的上下文选项数组值。
63、stream_wrapper_get_metadata():获取流包装器的元数据信息。
64、stream_wrapper_register():注册一个新的流包装器函数库。
65、stream_wrapper_unregister():注销一个已注册的流包装器函数库。
66、stream_get_wrappers():获取所有可用的流包装器函数库列表。
67、stream_wrapper_export():导出一个流包装器函数库的上下文选项数组值。
68、stream_wrapper_import():导入一个流包装器函数库的上下文选项数组值。
69、fpassthru():将所有剩余的输出发送到输出缓冲区,然后刷新缓冲区,并关闭连接,除非使用了fflush(), ob_flush(), or flush().