Skip to main content
Drupal API
User account menu
  • Log in

Breadcrumb

  1. Drupal Core 11.1.x
  2. Message.php

function Message::toString

Same name in this branch
  1. 11.1.x vendor/symfony/mime/Message.php \Symfony\Component\Mime\Message::toString()

Returns the string representation of an HTTP message.

Parameters

MessageInterface $message Message to convert to a string.:

File

vendor/guzzlehttp/psr7/src/Message.php, line 18

Class

Message

Namespace

GuzzleHttp\Psr7

Code

public static function toString(MessageInterface $message) : string {
    if ($message instanceof RequestInterface) {
        $msg = trim($message->getMethod() . ' ' . $message->getRequestTarget()) . ' HTTP/' . $message->getProtocolVersion();
        if (!$message->hasHeader('host')) {
            $msg .= "\r\nHost: " . $message->getUri()
                ->getHost();
        }
    }
    elseif ($message instanceof ResponseInterface) {
        $msg = 'HTTP/' . $message->getProtocolVersion() . ' ' . $message->getStatusCode() . ' ' . $message->getReasonPhrase();
    }
    else {
        throw new \InvalidArgumentException('Unknown message type');
    }
    foreach ($message->getHeaders() as $name => $values) {
        if (is_string($name) && strtolower($name) === 'set-cookie') {
            foreach ($values as $value) {
                $msg .= "\r\n{$name}: " . $value;
            }
        }
        else {
            $msg .= "\r\n{$name}: " . implode(', ', $values);
        }
    }
    return "{$msg}\r\n\r\n" . $message->getBody();
}
RSS feed
Powered by Drupal