Stream
Joomla! 流接口
Joomla! 流接口旨在将文件作为流进行处理,而传统的 JFile 静态类则以原子方式处理文件。
此类遵循流包装器操作
链接 |
PHP 流手册 流包装器 流过滤器 套接字传输(某些选项使用,尤其是 HTTP 代理) |
---|---|
自 |
1.0 |
包 |
Joomla 框架 |
方法
__construct
构造函数
__construct( writeprefix = '', readprefix = '', mixed||string|int context = []) :
自 |
1.0 |
---|
参数
- writeprefix
string
流的前缀(可选)。与 JPATH_* 不同,它有一个最后的路径分隔符!- readprefix
string
读取前缀(可选)。- context
array<string|int, mixed>
上下文选项(可选)。
响应
mixed
__destruct
析构函数
__destruct() :
自 |
1.0 |
---|
响应
mixed
_buildContext
流上下文 从数组构建上下文
_buildContext() :
自 |
1.0 |
---|
响应
void
_getFilename
确定文件的适当“文件名”
_getFilename( filename, mode, usePrefix, relative) :
自 |
1.0 |
---|
参数
- filename
string
文件的原始文件名。- mode
string
用于检索文件名的模式字符串。- usePrefix
bool
控制是否使用前缀。- relative
bool
确定给定的文件名是否为相对路径。相对路径不带 JPATH_ROOT。
响应
string
addContextEntry
向上下文添加特定选项
addContextEntry( wrapper, name, value) :
链接 |
流上下文创建 各种流的上下文选项 |
---|---|
自 |
1.0 |
参数
- wrapper
string
要使用的包装器。- name
string
要设置的选项。- value
string
选项的值。
响应
void
appendFilter
流过滤器 将过滤器附加到链中
appendFilter( filtername, readWrite = STREAM_FILTER_READ, mixed||string|int params = []) : resource|bool
链接 | |
---|---|
自 |
1.0 |
抛出 |
参数
- filtername
string
过滤器的键名。- readWrite
int
可选。默认为 STREAM_FILTER_READ。- params
array<string|int, mixed>
用于 stream_filter_append 调用的参数数组。
响应
resource|bool
applyContextToStream
将当前上下文应用于流
applyContextToStream() :
chmod
Chmod 包装器
chmod( filename = '', mode) :
close
尝试关闭文件句柄
close() :
copy
将文件从 src 复制到 dest
copy( src, dest, context = null, usePrefix = true, relative = false) :
自 |
1.0 |
---|---|
抛出 |
参数
- src
string
要复制的文件路径。- dest
string
要复制到的文件路径。- context
resource
有效的上下文资源(可选),使用 stream_context_create 创建。- usePrefix
bool
控制是否使用前缀(可选)。- relative
bool
确定给定的文件名是否为相对路径。相对路径不带 JPATH_ROOT。
响应
bool
delete
删除文件
delete( filename, context = null, usePrefix = true, relative = false) :
自 |
1.0 |
---|---|
抛出 |
参数
- filename
string
要删除的文件路径。- context
resource
有效的上下文资源(可选),使用 stream_context_create 创建。- usePrefix
bool
控制是否使用前缀(可选)。- relative
bool
确定给定的文件名是否为相对路径。相对路径不带 JPATH_ROOT。
响应
bool
deleteContextEntry
从上下文中删除特定设置
deleteContextEntry( wrapper, name) :
链接 | |
---|---|
自 |
1.0 |
参数
- wrapper
string
要使用的包装器。- name
string
要取消设置的选项。
响应
void
get
返回对象的属性,如果未设置属性,则返回默认值。
get( property, default = null) :
自 |
1.0 |
---|
参数
- property
string
属性的名称。- default
mixed
默认值。
响应
mixed
属性的值。
get_meta_data
获取流元数据
get_meta_data() : mixed||string|int
getStream
使用适当的前缀创建新的流对象
getStream( usePrefix = true, ua = null, uamask = false) : \Joomla\Filesystem\Stream
move
移动文件
move( src, dest, context = null, usePrefix = true, relative = false) :
自 |
1.0 |
---|---|
抛出 |
参数
- src
string
要移动的文件路径。- dest
string
要移动到的文件路径。- context
resource
有效的上下文资源(可选),使用 stream_context_create 创建。- usePrefix
bool
控制是否使用前缀(可选)。- relative
bool
确定给定的文件名是否为相对路径。相对路径不带 JPATH_ROOT。
响应
bool
open
通用文件操作
open( filename, mode = 'r', useIncludePath = false, context = null, usePrefix = false, relative = false, detectprocessingmode = false) :
使用一些延迟加载智能打开流
自 |
1.0 |
---|---|
抛出 |
参数
- filename
string
文件名- mode
string
要使用的模式字符串- useIncludePath
bool
使用 PHP include 路径- context
resource
打开时要使用的上下文- usePrefix
bool
使用前缀打开文件- relative
bool
文件名是相对路径(如果为 false,则剥离 JPATH_ROOT 使其成为相对路径)- detectprocessingmode
bool
检测文件的处理方法,并使用适当的函数自动处理输出
响应
bool
prependFilter
将过滤器附加到链的开头
prependFilter( filtername, readWrite = STREAM_FILTER_READ, mixed||string|int params = []) : resource|bool
链接 | |
---|---|
自 |
1.0 |
抛出 |
参数
- filtername
string
过滤器的键名。- readWrite
int
可选。默认为 STREAM_FILTER_READ。- params
array<string|int, mixed>
用于 stream_filter_prepend 调用的参数数组。
响应
resource|bool
read
读取文件
read( length) :
removeFilter
移除过滤器,可以通过资源(从附加或附加函数中分配)或通过获取过滤器列表来实现。
removeFilter( &resource, byindex = false) :
seek
查找文件
seek( offset, whence = SEEK_SET) :
注意:返回值与 fseek 不同
链接 | |
---|---|
自 |
1.0 |
抛出 |
参数
- offset
int
查找时要使用的偏移量。- whence
int
要使用的查找模式。
响应
bool
成功为 true,失败为 false
set
修改对象的属性,如果该属性不存在,则创建它。
set( property, value = null) :
自 |
1.0 |
---|
参数
- property
string
属性的名称。- value
mixed
要设置的属性的值。
响应
mixed
属性的先前值。
setContextOptions
将上下文更新为数组
setContextOptions(mixed||string|int context) :
格式与 stream_context_create 的选项相同
链接 | |
---|---|
自 |
1.0 |
参数
- context
array<string|int, mixed>
用于创建上下文的选项
响应
void
upload
上传文件
upload( src, dest, context = null, usePrefix = true, relative = false) :
自 |
1.0 |
---|---|
抛出 |
参数
- src
string
要复制的文件路径(通常为临时文件夹)。- dest
string
要复制到的文件路径。- context
resource
有效的上下文资源(可选),使用 stream_context_create 创建。- usePrefix
bool
控制是否使用前缀(可选)。- relative
bool
确定给定的文件名是否为相对路径。相对路径不带 JPATH_ROOT。
响应
bool
write
文件写入
write( &string, length, chunk) :
虽然此函数接受引用,但底层的 fwrite 将执行复制!这将大致使您执行的任何写入的内存分配增加一倍。指定 chunked 将通过仅以特定块大小写入来解决此问题。默认值为 8192,这在大多数情况下是一个合理的数字(使用 Stream::set('chunksize', newsize); 更改默认值)。注意:这不像读取那样支持 gzip/bzip2 写入
链接 | |
---|---|
自 |
1.0 |
抛出 |
参数
- string
string
要写入的字符串的引用。- length
int
要写入的字符串的长度。- chunk
int
要写入的块的大小。
响应
bool
writeFile
将数据块写入文件。
writeFile( filename, &buffer, appendToFile = false) :
自 |
1.0 |
---|
参数
- filename
string
文件名。- buffer
string
要写入文件的数据。- appendToFile
bool
追加到文件,而不是覆盖它。
响应
bool
属性
filemode
文件模式
自 |
1.0 |
---|
类型
int
dirmode
目录模式
自 |
1.0 |
---|
类型
int
chunksize
默认块大小
自 |
1.0 |
---|
类型
int
filename
文件名
自 |
1.0 |
---|
类型
string
writeprefix
写入连接的前缀
自 |
1.0 |
---|
类型
string
readprefix
读取连接的前缀
自 |
1.0 |
---|
类型
string
processingmethod
读取处理方法
自 |
1.0 |
---|
类型
string
filters
应用于当前流的过滤器
自 |
1.0 |
---|
类型
array<string|int, mixed>
fh
文件句柄
自 |
1.0 |
---|
类型
resource
filesize
文件大小
自 |
1.0 |
---|
类型
int
context
打开连接时要使用的上下文
自 |
1.0 |
---|
类型
string
contextOptions
上下文选项;用于重建上下文
自 |
1.0 |
---|
类型
array<string|int, mixed>
openmode
文件打开的模式
自 |
1.0 |
---|
类型
string