A função header() envia cabeçalhos HTTP brutos para o cliente.
É importante perceber que a função header() deve ser chamada antes de qualquer saída real ser enviada (no PHP 4 e posteriores, você pode usar buffer de saída para resolver este problema):
<html><?php// Isso resulta em um erro.// A saída acima é antes do header() callheader('Location: http://www.example.com/');?>
cabeçalho(string,substituir,http_response_code)
parâmetro | descrever |
---|---|
corda | Obrigatório. Especifica a sequência de cabeçalho a ser enviada. |
substituir | Opcional. Indica se este cabeçalho substitui o cabeçalho anterior ou adiciona um segundo cabeçalho. O padrão é TRUE (substituição). FALSE (permite vários cabeçalhos do mesmo tipo). |
http_código_de_resposta | Opcional. Força o código de resposta HTTP para o valor especificado. (Disponível em PHP 4.3 e superior) |
Nota: Desde o PHP 4.4, esta função evita que vários cabeçalhos sejam enviados de uma vez. Esta é uma medida de proteção contra ataques de injeção de cabeçalho.
Desative o cache de página:
<?php// Data no passadoheader("Expira: Seg, 26 de julho de 1997 05:00:00 GMT");header("Cache-Control: no-cache");header("Pragma: no-cache") ;?><html><corpo>......
Nota: Existem opções que os usuários podem definir para alterar as configurações de cache padrão do navegador. Ao enviar o cabeçalho acima, você pode substituir qualquer uma dessas configurações e forçar o navegador a não armazenar em cache!
Solicita ao usuário que salve um arquivo PDF gerado (o cabeçalho Content-Disposition é usado para fornecer um nome de arquivo recomendado e forçar o navegador a exibir uma caixa de diálogo para salvar):
<?phpheader("Content-type:application/pdf");// Será chamado de download.pdfheader("Content-Disposition:attachment;filename='downloaded.pdf'");// A fonte do PDF está no original .pdfreadfile("original.pdf");?><html><body>......
Nota: O Microsoft IE 5.5 possui um bug que impede o mecanismo acima. Este bug pode ser resolvido atualizando para o Service Pack 2 ou superior.