Beispiel #1
0
 /**
  * Normalizes the headers
  *
  * @param string|string[] $headers
  * @param boolean         $associative TRUE if the headers should be an associative array else FALSE.
  *
  * @return string[]
  */
 public static function normalize($headers, $associative = true)
 {
     $normalizedHeaders = [];
     if (!$associative) {
         $headers = self::normalize($headers);
     }
     foreach (HeaderParser::parse($headers) as $name => $value) {
         if (strpos($value, 'HTTP/') === 0) {
             continue;
         }
         list($name, $value) = explode(':', $value, 2);
         $name = self::normalizeHeaderName($name);
         $value = self::normalizeHeaderValue($value);
         if (!$associative) {
             $normalizedHeaders[] = $name . ': ' . $value;
         } else {
             $normalizedHeaders[$name] = isset($normalizedHeaders[$name]) ? $normalizedHeaders[$name] . ', ' . $value : $value;
         }
     }
     return $normalizedHeaders;
 }
 /**
  * Extracts the status line
  *
  * @param string|string[] $headers
  *
  * @return string
  */
 public static function extract($headers)
 {
     $headers = HeaderParser::parse($headers);
     return $headers[0];
 }