protected function HtmlResponseAttachmentsProcessor::setHeaders

protected HtmlResponseAttachmentsProcessor::setHeaders(HtmlResponse $response, array $headers)

Sets headers on a response object.

Parameters

\Drupal\Core\Render\HtmlResponse $response: The HTML response to update.

array $headers: The headers to set, as an array. The items in this array should be as follows:

  • The header name.
  • The header value.
  • (optional) Whether to replace a current value with the new one, or add it to the others. If the value is not replaced, it will be appended, resulting in a header like this: 'Header: value1,value2'

File

core/lib/Drupal/Core/Render/HtmlResponseAttachmentsProcessor.php, line 345

Class

HtmlResponseAttachmentsProcessor
Processes attachments of HTML responses.

Namespace

Drupal\Core\Render

Code

protected function setHeaders(HtmlResponse $response, array $headers) {
  foreach ($headers as $values) {
    $name = $values[0];
    $value = $values[1];
    $replace = !empty($values[2]);

    // Drupal treats the HTTP response status code like a header, even though
    // it really is not.
    if (strtolower($name) === 'status') {
      $response->setStatusCode($value);
    }
    else {
      $response->headers->set($name, $value, $replace);
    }
  }
}

© 2001–2016 by the original authors
Licensed under the GNU General Public License, version 2 and later.
Drupal is a registered trademark of Dries Buytaert.
https://api.drupal.org/api/drupal/core!lib!Drupal!Core!Render!HtmlResponseAttachmentsProcessor.php/function/HtmlResponseAttachmentsProcessor::setHeaders/8.1.x