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

抛出

FilesystemException

参数

filtername

string过滤器的键名。

readWrite

int可选。默认为 STREAM_FILTER_READ。

params

array<string|int, mixed>用于 stream_filter_append 调用的参数数组。

响应

resource|bool

applyContextToStream

将当前上下文应用于流

applyContextToStream() : 

使用此方法在打开流后更改上下文的 value。

1.0

抛出

FilesystemException

响应

bool

chmod

Chmod 包装器

chmod( filename = '',  mode) : 

1.0

抛出

FilesystemException

参数

filename

string文件名。

mode

mixed要使用的模式。

响应

bool

close

尝试关闭文件句柄

close() : 

如果失败,则返回 false,成功则返回 true。如果文件未打开,系统将返回 true,此函数也会销毁文件句柄。

1.0

抛出

FilesystemException

响应

bool

copy

将文件从 src 复制到 dest

copy( src,  dest,  context = null,  usePrefix = true,  relative = false) : 

1.0

抛出

FilesystemException

参数

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

抛出

FilesystemException

参数

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

eof

确定我们是否已到达流文件的末尾

eof() : 

1.0

抛出

FilesystemException

响应

bool

filesize

检索路径的文件大小

filesize() : int|bool

1.0

抛出

FilesystemException

响应

int|bool

get

返回对象的属性,如果未设置属性,则返回默认值。

get( property,  default = null) : 

1.0

参数

property

string属性的名称。

default

mixed默认值。

响应

mixed属性的值。

get_meta_data

获取流元数据

get_meta_data() : mixed||string|int
链接

1.0

抛出

FilesystemException

响应

array<string|int, mixed>header/metadata

getFileHandle

返回内部文件句柄

getFileHandle() : \Joomla\Filesystem\File

1.0

响应

Filehandler

gets

从流源获取一行。

gets( length) : 

1.0

抛出

FilesystemException

参数

length

int要读取的字节数(可选)。

响应

string

getStream

使用适当的前缀创建新的流对象

getStream( usePrefix = true,  ua = null,  uamask = false) : \Joomla\Filesystem\Stream
static
参见 Stream

1.0

参数

usePrefix

bool为写入前缀连接

ua

string要使用的 UA 用户代理。

uamask

bool用户代理屏蔽(前缀为 Mozilla)。

响应

Stream

move

移动文件

move( src,  dest,  context = null,  usePrefix = true,  relative = false) : 

1.0

抛出

FilesystemException

参数

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

抛出

FilesystemException

参数

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

抛出

FilesystemException

参数

filtername

string过滤器的键名。

readWrite

int可选。默认为 STREAM_FILTER_READ。

params

array<string|int, mixed>用于 stream_filter_prepend 调用的参数数组。

响应

resource|bool

read

读取文件

read( length) : 

适当地处理用户空间流,否则任何读取都将返回 8192

链接

1.0

抛出

FilesystemException

参数

length

int要读取的数据长度

响应

string

removeFilter

移除过滤器,可以通过资源(从附加或附加函数中分配)或通过获取过滤器列表来实现。

removeFilter( &resource,  byindex = false) : 

1.0

抛出

FilesystemException

参数

resource

resource资源。

byindex

bool过滤器的索引。

响应

bool操作结果

seek

查找文件

seek( offset,  whence = SEEK_SET) : 

注意:返回值与 fseek 不同

链接

1.0

抛出

FilesystemException

参数

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

tell

返回文件读/写指针的当前位置。

tell() : 

1.0

抛出

FilesystemException

响应

int

upload

上传文件

upload( src,  dest,  context = null,  usePrefix = true,  relative = false) : 

1.0

抛出

FilesystemException

参数

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

抛出

FilesystemException

参数

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