12    private $headers = [];
 
   41        return $this->headers;
 
   46        return isset($this->headerNames[strtolower(
$header)]);
 
   53        if (!isset($this->headerNames[
$header])) {
 
   69        if (!is_array($value)) {
 
   74        $normalized = strtolower(
$header);
 
   77        if (isset($new->headerNames[$normalized])) {
 
   78            unset($new->headers[$new->headerNames[$normalized]]);
 
   80        $new->headerNames[$normalized] = 
$header;
 
   81        $new->headers[
$header] = $value;
 
   88        if (!is_array($value)) {
 
   93        $normalized = strtolower(
$header);
 
   96        if (isset($new->headerNames[$normalized])) {
 
   97            $header = $this->headerNames[$normalized];
 
   98            $new->headers[
$header] = array_merge($this->headers[
$header], $value);
 
  100            $new->headerNames[$normalized] = 
$header;
 
  101            $new->headers[
$header] = $value;
 
  109        $normalized = strtolower(
$header);
 
  111        if (!isset($this->headerNames[$normalized])) {
 
  115        $header = $this->headerNames[$normalized];
 
  118        unset($new->headers[
$header], $new->headerNames[$normalized]);
 
  125        if (!$this->stream) {
 
  134        if ($body === $this->stream) {
 
  139        $new->stream = $body;
 
  145        $this->headerNames = $this->headers = [];
 
  146        foreach ($headers as 
$header => $value) {
 
  147            if (!is_array($value)) {
 
  152            $normalized = strtolower(
$header);
 
  153            if (isset($this->headerNames[$normalized])) {
 
  154                $header = $this->headerNames[$normalized];
 
  155                $this->headers[
$header] = array_merge($this->headers[
$header], $value);
 
  157                $this->headerNames[$normalized] = 
$header;
 
  158                $this->headers[
$header] = $value;
 
  179        return array_map(
function ($value) {
 
  180            return trim($value, 
" \t");
 
An exception for terminatinating execution or to throw for unit testing.
$stream
PHP stream implementation.
withBody(StreamInterface $body)
stream_for($resource='', array $options=[])
Create a new stream based on the input type.
withHeader($header, $value)
trimHeaderValues(array $values)
Trims whitespace from the header values.
withAddedHeader($header, $value)
trait MessageTrait
Trait implementing functionality common to requests and responses.
withProtocolVersion($version)
setHeaders(array $headers)