Функция Header

Функция Header используется для отправки HTTP заголовка

void header( string $string [, bool $replace = true [, int $http_response_code ]] )

Функция Header должна вызываться перед генерацией какого-либо содержимого страницы.

Параметр String являет собой строку заголовка.

Существует два специальных заголовка. Один из них начинается с «HTTP/» (регистр не важен) и используется для отправки кода состояния HTTP. Например, если веб-сервер Apache сконфигурирован таким образом, чтобы запросы к несуществующим файлам обрабатывались средствами PHP скрипта (используя директиву ErrorDocument), вы наверняка захотите быть уверенными что скрипт генерирует правильный код состояния.

header( "HTTP/1.1 404 Not Found" ); // Отправляем заголовок 404 ошибки сервера

Другим специальным видом заголовков является «Location:«. В этом случае функция не только отправляет этот заголовок броузеру, но также возвращает ему код состояния REDIRECT (302) (если ранее не был установлен код 201 или 3xx).

header("Location: http://www.example.com/");

Необязательный параметр Replace определяет, надо ли заменять предыдущий аналогичный заголовок или заголовок того же типа. По умолчанию заголовок будет заменен, но если передать FALSE, можно задать несколько однотипных заголовков. Например:

header('WWW-Authenticate: Negotiate');
header('WWW-Authenticate: NTLM', false);

Параметр Http_response_code принудительно задает код ответа HTTP. Следует учитывать, что это будет работать, только если строка String не является пустой.

Функция Header не возвращает значения после выполнения.

PHP скрипты часто генерируют динамический контент, который не должен кэшироваться клиентским броузером или какими-либо промежуточными обработчиками, вроде прокси серверов. Можно принудительно отключить кэширование на многих прокси серверах и броузерах, передав заголовки:

header("Cache-Control: no-cache, must-revalidate");
header("Expires: Sat, 26 Jul 1997 05:00:00 GMT");

Спецификация HTTP/1.1 требует указывать абсолютный URI в качестве аргумента Location:, включающий схему, имя хоста и абсолютный путь, хотя некоторые клиенты способны принимать и относительные URI.

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *