Zend\Diactoros\Request\Serializer::toString PHP Méthode

toString() public static méthode

Serialize a request message to a string.
public static toString ( Psr\Http\Message\RequestInterface $request ) : string
$request Psr\Http\Message\RequestInterface
Résultat string
    public static function toString(RequestInterface $request)
    {
        $httpMethod = $request->getMethod();
        if (empty($httpMethod)) {
            throw new UnexpectedValueException('Object can not be serialized because HTTP method is empty');
        }
        $headers = self::serializeHeaders($request->getHeaders());
        $body = (string) $request->getBody();
        $format = '%s %s HTTP/%s%s%s';
        if (!empty($headers)) {
            $headers = "\r\n" . $headers;
        }
        if (!empty($body)) {
            $headers .= "\r\n\r\n";
        }
        return sprintf($format, $httpMethod, $request->getRequestTarget(), $request->getProtocolVersion(), $headers, $body);
    }

Usage Example

Exemple #1
0
 private function generateRequestLog(Request $request, Response $response)
 {
     if ($this->options['full']) {
         return RequestSerializer::toString($request);
     }
     $msg = sprintf("%s %s", $request->getMethod(), $request->getRequestTarget());
     if ($request->hasHeader('X-Request-Id')) {
         $msg .= ' RequestId: ' . $request->getHeader('X-Request-Id')[0];
     } elseif ($response->hasHeader('X-Request-Id')) {
         $msg .= ' RequestId: ' . $response->getHeader('X-Request-Id')[0];
     }
     return $msg;
 }
All Usage Examples Of Zend\Diactoros\Request\Serializer::toString