struggle-for-php / sfp-diactoros-extension
为zend-diactoros提供的扩展。
0.1.0
2015-06-05 15:58 UTC
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: 2024-09-06 15:25:50 UTC
README
为zend-diactoros提供的扩展。
特性
SfpDiactoros\Response\SwitchingEmitter
允许使用 FpassthruInterface
的 fpassthru()
。
仅在 emitBody()
中对原始的 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(); }
用法
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));