# Класс HttpSoft\Message\StreamFactory

Фабрика для создания HttpSoft\Message\Stream, реализует Psr\Http\Message\StreamFactoryInterface.

Исходный код на GitHub.

use HttpSoft\Message\StreamFactory;

$factory = new StreamFactory();

// Создать экземпляр `HttpSoft\Message\Stream` из существующего файла.

$stream = $factory->createStreamFromFile('path/to/file', 'r');
$stream->getMetadata('uri'); // 'path/to/file'
$stream->getContents(); // 'File content'

// Создать экземпляр `HttpSoft\Message\Stream` из существующего ресурса.

$resource = fopen('path/to/file', 'r');
$stream = $factory->createStreamFromResource($resource);
$stream->getMetadata('uri'); // 'path/to/file'
$stream->getContents(); // 'File content'

// Создать экземпляр `HttpSoft\Message\Stream` из строки, используя временный ресурс.

$stream = $factory->createStream('Content');
$stream->getMetadata('uri'); // 'php://temp'
$stream->getContents(); // 'Content'

# Публичные методы

Оригинальное подробное описание методов смотрите в Psr\Http\Message\StreamFactoryInterface.

# createStream

Создает новый экземпляр HttpSoft\Message\Stream из строки, используя временный ресурс.

public function createStream(string $content = ''): StreamInterface;

# createStreamFromFile

Создает новый экземпляр HttpSoft\Message\Stream из существующего файла.

public function createStreamFromFile(string $filename, string $mode = 'r'): StreamInterface;

# createStreamFromResource

Создает новый экземпляр HttpSoft\Message\Stream из существующего ресурса.

/**
 * @param resource $resource
 * @return StreamInterface
 */
public function createStreamFromResource($resource): StreamInterface;