Resposta HTTP

Além dos recursos nativos do PHP, existem também recursos específicos adicionais para facilitar o tratamento de respostas HTTP.

Definir ou remover cabeçalhos de resposta

É Response::header() semelhante à função nativa header(), com a diferença que faz uma checagem nos valores enviados. Exemplo:

use Inphinit\Http\Response; Response::header('Foo', 'bar');

Defina ou remova o cabeçalho Content-Type.

Definindo Content-Type como application/xml:

use Inphinit\Http\Response; Response::type('application/xml');

Configurando Content-Type com o text/css conjunto de caracteres iso-8859-1:

use Inphinit\Http\Response; Response::type('text/csv', 'iso-8859-1');

Alguns tipos possuem atalhos:

Uso Equivalente
Response::type('bson') Response::type('application/bson')
Response::type('json') Response::type('application/json')
Response::type('xml') Response::type('application/xml')
Response::type('atom') Response::type('application/atom+xml')
Response::type('rss') Response::type('application/rss+xml')

Download forçado

Forçando o download da página atual:

use Inphinit\Http\Response; Response::download('page.html');

Configurar o Content-Length pode ajudar os gerenciadores de download a fornecer um tempo estimado de conclusão do download, o que pode ser feito definindo o segundo parâmetro:

use Inphinit\Http\Response; Response::download('report.pdf', 1000);

Código de status

Obtenha o código de status de resposta atual:

use Inphinit\Http\Response; echo Response::status();

Definir código de status da resposta:

use Inphinit\Http\Response; Response::status(201);

Defina o código de status da resposta e retorne o código anterior:

use Inphinit\Http\Response; $previous = Response::status(204); echo $previous;

É possível usar as constantes disponíveis em Inphinit\Http\Status (veja: Códigos de Resposta):

use Inphinit\Http\Response; use Inphinit\Http\Status; // Bad Request Response::status(Status::HTTP_BAD_REQUEST);

Defina os cabeçalhos de cache ou não cache.

Defina o cache em segundos

O cache expira em 3600 segundos:

use Inphinit\Http\Response; Response::cache(3600);

Sem cache

Usar -1 sem cache :

use Inphinit\Http\Response; Response::cache(-1);

Configurar cache com descrições textuais de data e hora em inglês

O cache expira em 1 semana:

use Inphinit\Http\Response; Response::cache('+1 week');

Mais detalhes em https://www.php.net/manual/en/datetime.formats.php#datetime.formats.relative.

Página inicial
Apoie com uma estrela no GitHub