struggle-for-php / sfp-diactoros-extension
An extension for zend-diactoros.
Installs: 16
Dependents: 0
Suggesters: 0
Security: 0
Stars: 1
Watchers: 1
Forks: 1
Open Issues: 1
pkg:composer/struggle-for-php/sfp-diactoros-extension
Requires
- php: >=5.5.0
- lstrojny/phpunit-function-mocker: ~0.2.0
- zendframework/zend-diactoros: ~1.0
Requires (Dev)
- phpunit/phpunit: ~4.6
- squizlabs/php_codesniffer: ~2.0
This package is auto-updated.
Last update: 2025-10-06 18:01:49 UTC
README
A extension for zend-diactoros.
Feature
SfpDiactoros\Response\SwitchingEmitter
allows fpassthru()
with FpassthruInterface
.
just changed only in emitBody()
from original Zend\Diactoros\Response\SapiEmitter
.
// SapiEmitter echo $response->getBody();
// SwitchingEmitter if ($body instanceof FpassthruInterface) { $resource = $body->detach(); if ($body instanceof RewindFpassthruInterface) { rewind($resource); } fpassthru($resource); } else { echo $response->getBody(); }
Usage
use SfpDiactoros\Response\SwitchingEmitter; $server = Server::createServer($app, $_SERVER, $_GET, $_POST, $_COOKIE, $_FILES); $server->setEmitter(new SwitchingEmitter);
use SfpDiactoros\Stream\RewindFpassthruStream; $fp = fopen('/tmp/bigsize', 'r'); $response->withBody(new RewindFpassthruStream($fp));