This commit is contained in:
Dennis Eichhorn 2015-12-27 21:18:04 +01:00
parent 1914939094
commit a03d724bbc
2 changed files with 26 additions and 0 deletions

View File

@ -101,6 +101,31 @@ class Response extends ResponseAbstract implements RenderableInterface
return false;
}
/**
* Generate header automatically based on code.
*
* @param \int $code HTTP status code
*
* @return \bool
*
* @since 1.0.0
* @author Dennis Eichhorn <d.eichhorn@oms.com>
*/
public function generateHeader(\int $code)
{
if ($code === 403) {
$this->setHeader('HTTP', 'HTTP/1.0 403 Forbidden');
$this->setHeader('Status', 'Status: HTTP/1.0 403 Forbidden');
} elseif ($code === 406) {
$this->setHeader('HTTP', 'HTTP/1.0 406 Not acceptable');
$this->setHeader('Status', 'Status:406 Not acceptable');
} elseif ($code === 503) {
$this->setHeader('HTTP', 'HTTP/1.0 503 Service Temporarily Unavailable');
$this->setHeader('Status', 'Status: 503 Service Temporarily Unavailable');
$this->setHeader('Retry-After', 'Retry-After: 300');
}
}
/**
* Set response.
*

View File

@ -125,6 +125,7 @@ abstract class ResponseAbstract implements ResponseInterface, ArrayableInterface
public function setStatusCode(\string $status)
{
$this->status = $status;
$this->generateHeader($status);
}
/**