cache server headers

This commit is contained in:
Dennis Eichhorn 2020-07-30 21:26:07 +02:00
parent f554feae82
commit 2177024fdc

View File

@ -37,6 +37,14 @@ final class HttpHeader extends HeaderAbstract
*/
private array $header = [];
/**
* Server headers.
*
* @var string[]
* @since 1.0.0
*/
private static $serverHeaders = [];
/**
* {@inheritdoc}
*/
@ -138,17 +146,20 @@ final class HttpHeader extends HeaderAbstract
*/
public static function getAllHeaders() : array
{
if (!empty(self::$serverHeaders)) {
return self::$serverHeaders;
}
if (\function_exists('getallheaders')) {
// @codeCoverageIgnoreStart
return \getallheaders();
self::$serverHeaders = \getallheaders();
// @codeCoverageIgnoreEnd
}
$headers = [];
foreach ($_SERVER as $name => $value) {
$part = \substr($name, 5);
if ($part === 'HTTP_') {
$headers[
self::$serverHeaders[
\str_replace(
' ',
'-',
@ -162,7 +173,7 @@ final class HttpHeader extends HeaderAbstract
}
}
return $headers;
return self::$serverHeaders;
}
/**