# Класс HttpSoft\Message\Stream
Класс, реализующий Psr\Http\Message\StreamInterface.
use HttpSoft\Message\Stream;
// Создать экземпляр из временный ресурса.
$stream = new Stream('php://temp', 'wb+');
$stream->getMetadata('uri'); // 'php://temp'
$stream->getMetadata('mode'); // 'w+b'
$stream->getContents(); // ''
$stream->getSize(); // null
$stream->isReadable(); // true
$stream->isSeekable(); // true
$stream->isWritable(); // true
$stream->write('content');
$stream->__toString(); // 'content'
// эквивалентно:
(string) $stream; // echo $stream;
$stream->close();
$stream->isReadable(); // false
$stream->isSeekable(); // false
$stream->isWritable(); // false
// Создать экземпляр из существующего файла.
$stream = new Stream('path/to/file', 'r');
$stream->getMetadata('uri'); // 'path/to/file'
$stream->getMetadata('mode'); // 'r'
$stream->getContents(); // 'File content'
$stream->getSize(); // 12
// Создать экземпляр из существующего ресурса.
$resource = fopen('path/to/file', 'r');
$stream = new Stream($resource);
$stream->getMetadata('uri'); // 'path/to/file'
$stream->getMetadata('mode'); // 'r'
$stream->getContents(); // 'File content'
$stream->getSize(); // 12
# Публичные методы
Оригинальное подробное описание методов смотрите в Psr\Http\Message\StreamInterface.
/**
* @param string|resource $stream
* @param string $mode
*/
public function __construct($stream = 'php://temp', string $mode = 'wb+');
Все остальные методы с описанием находятся в подключаемом трейте (HttpSoft\Message\StreamTrait).