Compose stream implementations based on a hash of functions.
Allows for easy testing and extension of a provided stream without needing
to create a concrete class for a simple extension point.
Methods summary
public
|
#
__construct( array $methods )
Parameters
- $methods
- Hash of method name to a callable.
|
public
|
#
__get( $name )
Lazily determine which methods are not implemented.
Lazily determine which methods are not implemented.
Throws
BadMethodCallException
|
public
|
#
__destruct( )
The close method is called on the underlying stream only if possible.
The close method is called on the underlying stream only if possible.
|
public static
GuzzleHttp\Psr7\FnStream
|
#
decorate( Psr\Http\Message\StreamInterface $stream, array $methods )
Adds custom functionality to an underlying stream by intercepting
specific method calls.
Adds custom functionality to an underlying stream by intercepting
specific method calls.
Parameters
- $stream
- Stream to decorate
- $methods
- Hash of method name to a closure
Returns
|
public
string
|
#
__toString( )
Reads all data from the stream into a string, from the beginning to end.
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
http://php.net/manual/en/language.oop5.magic.php#object.tostring
Implementation of
|
public
|
#
close( )
Closes the stream and any underlying resources.
Closes the stream and any underlying resources.
Implementation of
|
public
resource|null
|
#
detach( )
Separates any underlying resources from the stream.
Separates any underlying resources from the stream.
After the stream has been detached, the stream is in an unusable state.
Returns
resource|null Underlying PHP stream, if any
Implementation of
|
public
integer|null
|
#
getSize( )
Get the size of the stream if known.
Get the size of the stream if known.
Returns
integer|null Returns the size in bytes if known, or null if unknown.
Implementation of
|
public
integer
|
#
tell( )
Returns the current position of the file read/write pointer
Returns the current position of the file read/write pointer
Returns
integer Position of the file pointer
Throws
RuntimeException on error.
Implementation of
|
public
boolean
|
#
eof( )
Returns true if the stream is at the end of the stream.
Returns true if the stream is at the end of the stream.
Returns
boolean
Implementation of
|
public
boolean
|
#
isSeekable( )
Returns whether or not the stream is seekable.
Returns whether or not the stream is seekable.
Returns
boolean
Implementation of
|
public
|
#
rewind( )
Seek to the beginning of the stream.
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).
Throws
RuntimeException on failure.
See
Link
Implementation of
|
public
|
#
seek( integer $offset, integer $whence = SEEK_SET )
Seek to a position in the stream.
Seek to a position in the stream.
Parameters
- $offset
- Stream offset
- $whence
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 fseek() . SEEK_SET: Set position equal to
offset bytes SEEK_CUR: Set position to current location plus offset
SEEK_END: Set position to end-of-stream plus offset.
Throws
RuntimeException on failure.
Link
Implementation of
|
public
boolean
|
#
isWritable( )
Returns whether or not the stream is writable.
Returns whether or not the stream is writable.
Returns
boolean
Implementation of
|
public
integer
|
#
write( string $string )
Write data to the stream.
Write data to the stream.
Parameters
- $string
- The string that is to be written.
Returns
integer Returns the number of bytes written to the stream.
Throws
RuntimeException on failure.
Implementation of
|
public
boolean
|
#
isReadable( )
Returns whether or not the stream is readable.
Returns whether or not the stream is readable.
Returns
boolean
Implementation of
|
public
string
|
#
read( integer $length )
Read data from the stream.
Read data from the stream.
Parameters
- $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.
Throws
RuntimeException if an error occurs.
Implementation of
|
public
string
|
#
getContents( )
Returns the remaining contents in a string
Returns the remaining contents in a string
Returns
string
Throws
RuntimeException if unable to read or an error occurs while
reading.
Implementation of
|
public
array|mixed|null
|
#
getMetadata( string $key = null )
Get stream metadata as an associative array or retrieve a specific key.
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
- $key
- 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.
Link
Implementation of
|