заголовок функции PHP ()
Определение и использование
заголовок () функция клиенту для отправки необработанных заголовков HTTP.
Важно признать, что вы должны вызвать функцию заголовка () перед любой фактический вывод отправляется (в PHP 4 и более поздних версиях, вы можете использовать буферизацию вывода для решения этой проблемы):
<?php
// This results in an error.
// The output above is before the header() call
header('Location: http://www.example.com/');
?>
грамматика
参数 | 描述 |
---|---|
string | 必需。规定要发送的报头字符串。 |
replace | 可选。指示该报头是否替换之前的报头,或添加第二个报头。默认是 TRUE(替换)。FALSE(允许相同类型的多个报头)。 |
http_response_code | 可选。把 HTTP 响应代码强制为指定的值。(PHP 4.3 以及更高版本可用) |
Советы и примечания
Примечание: Начиная после PHP 4.4, функция для предотвращения отправки нескольких заголовков.Это защита от атак путем внедрения головы.
Пример 1
Отключить кэширование страниц:
// 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>
...
...
Примечание: Пользователи могут установить некоторые опции для изменения настроек кэша браузера по умолчанию.Отправляя заголовки выше, вы можете переопределить любой из этих параметров, не заставляйте кэш браузера!
Пример 2
Подскажите пользователю сохранить сгенерированный файл PDF (Content-Disposition заголовок используется, чтобы обеспечить рекомендуемую имя файла и заставить браузер отобразить диалог сохранения):
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>
...
...
Примечание: Microsoft IE более 5,5 , чем существование механизма , чтобы предотвратить ошибку.При обновлении до Service Pack 2 или более поздней версии, вы можете исправить ошибку.
Полный PHP HTTP Справочное руководство