Class AppendStream
- GuzzleHttp\Psr7\AppendStream implements Psr\Http\Message\StreamInterface
- Namespace: GuzzleHttp\Psr7
- Located at AppendStream.php
Reads from multiple streams, one after the other.
This is a read-only stream decorator.
Methods Summary
- __construct ( array $streams = [] )
-
__toString ( )
Reads all data from the stream into a string, from the beginning to end.
-
addStream ( Psr\Http\Message\StreamInterface $stream )
Add a stream to the AppendStream
-
getContents ( )
Returns the remaining contents in a string
-
close ( )
Closes each attached stream.
-
detach ( )
Detaches each attached stream.
-
tell ( )
Returns the current position of the file read/write pointer
-
getSize ( )
Tries to calculate the size by adding the size of each stream.
-
eof ( )
Returns true if the stream is at the end of the stream.
-
rewind ( )
Seek to the beginning of the stream.
-
seek ( int $offset, int $whence = SEEK_SET )
Attempts to seek to the given position. Only supports SEEK_SET.
-
read ( int $length )
Reads from all of the appended streams until the length is met or EOF.
-
isReadable ( )
Returns whether or not the stream is readable.
-
isWritable ( )
Returns whether or not the stream is writable.
-
isSeekable ( )
Returns whether or not the stream is seekable.
-
write ( string $string )
Write data to the stream.
-
getMetadata ( string $key = null )
Get stream metadata as an associative array or retrieve a specific key.
Methods Details
__construct ( array $streams = [] )
Parameters
array | $streams = [] | Streams to decorate. Each stream must be readable. |
string __toString ( )
Reads all data from the stream into a string, from the beginning to end.
This method MUST attempt to seek to the beginning of the stream before reading data and read the stream until the end is reached.
Warning: This could attempt to load a large amount of data into memory.
This method MUST NOT raise an exception in order to conform with PHP's string casting operations.
Returns
string |
See
Implementation of
addStream (
Psr\Http\Message\StreamInterface
$stream
)
Add a stream to the AppendStream
Parameters
Psr\Http\Message\StreamInterface |
$stream | Stream to append. Must be readable. |
Exceptions
InvalidArgumentException if the stream is not readable |
string getContents ( )
Returns the remaining contents in a string
Returns
string |
Exceptions
RuntimeException if unable to read or an error occurs while reading. |
Implementation of
close ( )
resource|null detach ( )
Detaches each attached stream.
Returns null as it's not clear which underlying stream resource to return.
After the stream has been detached, the stream is in an unusable state.
Returns
resource|null Underlying PHP stream, if any |
Implementation of
integer tell ( )
Returns the current position of the file read/write pointer
Returns
integer Position of the file pointer |
Exceptions
RuntimeException on error. |
Implementation of
integer|null getSize ( )
Tries to calculate the size by adding the size of each stream.
If any of the streams do not return a valid number, then the size of the append stream cannot be determined and null is returned.
Returns
integer|null Returns the size in bytes if known, or null if unknown. |
Implementation of
boolean eof ( )
Returns true if the stream is at the end of the stream.
Returns
boolean |
Implementation of
rewind ( )
Seek to the beginning of the stream.
If the stream is not seekable, this method will raise an exception; otherwise, it will perform a seek(0).
Exceptions
RuntimeException on failure. |
See
Link
Implementation of
seek ( integer $offset, integer $whence = SEEK_SET )
Attempts to seek to the given position. Only supports SEEK_SET.
Parameters
integer | $offset | Stream offset |
integer | $whence = SEEK_SET | Specifies how the cursor position will be calculated
based on the seek offset. Valid values are identical to the built-in
PHP $whence values for |
Exceptions
RuntimeException on failure. |
Implementation of
string read ( integer $length )
Reads from all of the appended streams until the length is met or EOF.
Parameters
integer | $length | Read up to $length bytes from the object and return them. Fewer than $length bytes may be returned if underlying stream call returns fewer bytes. |
Returns
string Returns the data read from the stream, or an empty string if no bytes are available. |
Exceptions
RuntimeException if an error occurs. |
Implementation of
boolean isReadable ( )
Returns whether or not the stream is readable.
Returns
boolean |
Implementation of
boolean isWritable ( )
Returns whether or not the stream is writable.
Returns
boolean |
Implementation of
boolean isSeekable ( )
Returns whether or not the stream is seekable.
Returns
boolean |
Implementation of
integer write ( string $string )
Write data to the stream.
Parameters
string | $string | The string that is to be written. |
Returns
integer Returns the number of bytes written to the stream. |
Exceptions
RuntimeException on failure. |
Implementation of
array|mixed|null getMetadata ( string $key = null )
Get stream metadata as an associative array or retrieve a specific key.
The keys returned are identical to the keys returned from PHP's stream_get_meta_data() function.
Parameters
string | $key = null | Specific metadata to retrieve. |
Returns
array|mixed|null Returns an associative array if no key is provided. Returns a specific key value if a key is provided and the value is found, or null if the key is not found. |