You are here

class HtmlResponse in Zircon Profile 8

Same name in this branch
  1. 8 vendor/zendframework/zend-diactoros/src/Response/HtmlResponse.php \Zend\Diactoros\Response\HtmlResponse
  2. 8 core/lib/Drupal/Core/Render/HtmlResponse.php \Drupal\Core\Render\HtmlResponse
Same name and namespace in other branches
  1. 8.0 vendor/zendframework/zend-diactoros/src/Response/HtmlResponse.php \Zend\Diactoros\Response\HtmlResponse

HTML response.

Allows creating a response by passing an HTML string to the constructor; by default, sets a status code of 200 and sets the Content-Type header to text/html.

Hierarchy

Expanded class hierarchy of HtmlResponse

1 file declares its use of HtmlResponse
TestControllers.php in core/modules/system/tests/modules/router_test_directory/src/TestControllers.php
Contains \Drupal\router_test\TestControllers.

File

vendor/zendframework/zend-diactoros/src/Response/HtmlResponse.php, line 24

Namespace

Zend\Diactoros\Response
View source
class HtmlResponse extends Response {
  use InjectContentTypeTrait;

  /**
   * Create an HTML response.
   *
   * Produces an HTML response with a Content-Type of text/html and a default
   * status of 200.
   *
   * @param string|StreamInterface $html HTML or stream for the message body.
   * @param int $status Integer status code for the response; 200 by default.
   * @param array $headers Array of headers to use at initialization.
   * @throws InvalidArgumentException if $html is neither a string or stream.
   */
  public function __construct($html, $status = 200, array $headers = []) {
    parent::__construct($this
      ->createBody($html), $status, $this
      ->injectContentType('text/html', $headers));
  }

  /**
   * Create the message body.
   *
   * @param string|StreamInterface $html
   * @return StreamInterface
   * @throws InvalidArgumentException if $html is neither a string or stream.
   */
  private function createBody($html) {
    if ($html instanceof StreamInterface) {
      return $html;
    }
    if (!is_string($html)) {
      throw new InvalidArgumentException(sprintf('Invalid content (%s) provided to %s', is_object($html) ? get_class($html) : gettype($html), __CLASS__));
    }
    $body = new Stream('php://temp', 'wb+');
    $body
      ->write($html);
    return $body;
  }

}

Members

Namesort descending Modifiers Type Description Overrides
HtmlResponse::createBody private function Create the message body.
HtmlResponse::__construct public function Create an HTML response. Overrides Response::__construct
InjectContentTypeTrait::injectContentType private function Inject the provided Content-Type, if none is already present.
MessageTrait::$headerNames protected property Map of normalized header name to original name used to register header.
MessageTrait::$headers protected property List of all registered headers, as key => array of values.
MessageTrait::$protocol private property
MessageTrait::$stream private property
MessageTrait::arrayContainsOnlyStrings private function Test that an array contains only strings
MessageTrait::assertValidHeaderValue private static function Assert that the provided header values are valid.
MessageTrait::filterHeaders private function Filter a set of headers to ensure they are in the correct internal format.
MessageTrait::filterStringValue private static function Test if a value is a string
MessageTrait::getBody public function Gets the body of the message.
MessageTrait::getHeader public function Retrieves a message header value by the given case-insensitive name. 1
MessageTrait::getHeaderLine public function Retrieves a comma-separated string of the values for a single header.
MessageTrait::getHeaders public function Retrieves all message headers. 1
MessageTrait::getProtocolVersion public function Retrieves the HTTP protocol version as a string.
MessageTrait::hasHeader public function Checks if a header exists by the given case-insensitive name.
MessageTrait::withAddedHeader public function Return an instance with the specified header appended with the given value.
MessageTrait::withBody public function Return an instance with the specified message body.
MessageTrait::withHeader public function Return an instance with the provided header, replacing any existing values of any headers with the same case-insensitive name.
MessageTrait::withoutHeader public function Return an instance without the specified header.
MessageTrait::withProtocolVersion public function Return an instance with the specified HTTP protocol version.
Response::$phrases private property Map of standard HTTP status code/reason phrases
Response::$reasonPhrase private property
Response::$statusCode private property
Response::assertHeaders private function Ensure header names and values are valid.
Response::getReasonPhrase public function Gets the response reason phrase associated with the status code. Overrides ResponseInterface::getReasonPhrase
Response::getStatusCode public function Gets the response status code. Overrides ResponseInterface::getStatusCode
Response::validateStatus private function Validate a status code.
Response::withStatus public function Return an instance with the specified status code and, optionally, reason phrase. Overrides ResponseInterface::withStatus