MemoryStream implements DestinationStream, SourceStream
Interfaces
Methods
- __construct() : mixed
- __destruct() : mixed
- append() : DestinationStream
- close() : void
- We are not closing memory streams, in order to cleanup memory use rm on Memory Filesystem.
- content() : string
- fromResource() : DestinationStream
- isOpen() : bool
- iterate() : Generator<string|int, string>
- path() : Path
- read() : string
- readLines() : Generator<string|int, string>
- Yields the stream's lines with the separator stripped: a 0-byte stream yields nothing, a separator that ends the stream opens no further line, and every other empty line is yielded as ''. The separator is matched byte for byte; no "\r" is stripped. "x\ny\n" -> ["x","y"], "x\n\ny" -> ["x","","y"], "x\n\n" -> ["x",""], "x\r\ny" -> ["x\r","y"], "" -> [].
- size() : null|int
Methods
__construct()
public
__construct(resource $handle, Path $path) : mixed
Parameters
- $handle : resource
- $path : Path
__destruct()
public
__destruct() : mixed
append()
public
append(string $data) : DestinationStream
Parameters
- $data : string
Return values
DestinationStreamclose()
We are not closing memory streams, in order to cleanup memory use rm on Memory Filesystem.
public
close() : void
content()
public
content() : string
Return values
stringfromResource()
public
fromResource(mixed $resource) : DestinationStream
Parameters
- $resource : mixed
Return values
DestinationStreamisOpen()
public
isOpen() : bool
Return values
booliterate()
public
iterate([int $length = 1 ]) : Generator<string|int, string>
Parameters
- $length : int = 1
-
number of bytes to read from the stream
Return values
Generator<string|int, string>path()
public
path() : Path
Return values
Pathread()
public
read(int $length, int $offset) : string
Parameters
- $length : int
-
number of bytes to read from the stream
- $offset : int
-
The offset where to start reading from the stream. If negative, reading will start from the end of the stream.
Return values
stringreadLines()
Yields the stream's lines with the separator stripped: a 0-byte stream yields nothing, a separator that ends the stream opens no further line, and every other empty line is yielded as ''. The separator is matched byte for byte; no "\r" is stripped. "x\ny\n" -> ["x","y"], "x\n\ny" -> ["x","","y"], "x\n\n" -> ["x",""], "x\r\ny" -> ["x\r","y"], "" -> [].
public
readLines([string $separator = "\n" ][, int|null $length = null ]) : Generator<string|int, string>
Parameters
- $separator : string = "\n"
-
multi-byte included
- $length : int|null = null
-
bytes read per step - a read-chunk hint, never a cap on line length; null lets the implementation choose
Return values
Generator<string|int, string>size()
public
size() : null|int
Return values
null|int —The size of the stream in bytes