Mercurial > hg > cmmr2012-drupal-site
view vendor/zendframework/zend-diactoros/src/Response/SapiEmitter.php @ 0:c75dbcec494b
Initial commit from drush-created site
author | Chris Cannam |
---|---|
date | Thu, 05 Jul 2018 14:24:15 +0000 |
parents | |
children | 5311817fb629 |
line wrap: on
line source
<?php /** * Zend Framework (http://framework.zend.com/) * * @see http://github.com/zendframework/zend-diactoros for the canonical source repository * @copyright Copyright (c) 2015-2016 Zend Technologies USA Inc. (http://www.zend.com) * @license https://github.com/zendframework/zend-diactoros/blob/master/LICENSE.md New BSD License */ namespace Zend\Diactoros\Response; use Psr\Http\Message\ResponseInterface; use RuntimeException; class SapiEmitter implements EmitterInterface { use SapiEmitterTrait; /** * Emits a response for a PHP SAPI environment. * * Emits the status line and headers via the header() function, and the * body content via the output buffer. * * @param ResponseInterface $response * @param null|int $maxBufferLevel Maximum output buffering level to unwrap. */ public function emit(ResponseInterface $response, $maxBufferLevel = null) { if (headers_sent()) { throw new RuntimeException('Unable to emit response; headers already sent'); } $response = $this->injectContentLength($response); $this->emitStatusLine($response); $this->emitHeaders($response); $this->flush($maxBufferLevel); $this->emitBody($response); } /** * Emit the message body. * * @param ResponseInterface $response */ private function emitBody(ResponseInterface $response) { echo $response->getBody(); } }