función de cabecera () de PHP
Definición y Uso
cabecera () para que el cliente envíe cabeceras HTTP primas.
Es importante reconocer que debe llamar a la función header () antes de enviar cualquier salida real (en PHP 4 y versiones posteriores, puede utilizar el búfer de salida para resolver este problema):
<?php
// This results in an error.
// The output above is before the header() call
header('Location: http://www.example.com/');
?>
gramática
参数 | 描述 |
---|---|
string | 必需。规定要发送的报头字符串。 |
replace | 可选。指示该报头是否替换之前的报头,或添加第二个报头。默认是 TRUE(替换)。FALSE(允许相同类型的多个报头)。 |
http_response_code | 可选。把 HTTP 响应代码强制为指定的值。(PHP 4.3 以及更高版本可用) |
Notas y sugerencias
NOTA: A partir de PHP después de 4.4, la función para evitar que envía varios encabezados.Esta es una protección contra los ataques de inyección de la cabeza.
Ejemplo 1
Desactivar la caché de páginas:
// Date in the past
header("Expires: Mon, 26 Jul 1997 05:00:00 GMT");
header("Cache-Control: no-cache");
header("Pragma: no-cache");
?>
<html>
<body>
...
...
Nota: Los usuarios pueden configurar algunas opciones para cambiar la configuración de caché del navegador por defecto.Mediante el envío de las cabeceras más arriba, puede anular cualquiera de estos ajustes, no fuerce la memoria caché del navegador!
Ejemplo 2
Preguntar al usuario guardar un archivo PDF generado (cabecera Content-Disposition se utiliza para proporcionar un nombre de archivo recomendada y forzar el navegador para visualizar el diálogo de grabación):
header("Content-type:application/pdf");
// It will be called downloaded.pdf
header("Content-Disposition:attachment;filename='downloaded.pdf'");
// The PDF source is in original.pdf
readfile("original.pdf");
?>
<html>
<body>
...
...
NOTA: Microsoft Internet Explorer 5.5 más que la existencia de un mecanismo para evitar el error.Mediante la actualización a Service Pack 2 o versiones posteriores, puede reparar el fallo.
PHP Completo manual de referencia de HTTP