PHP. Учебник. 2005

headers_sent

Пред.

След.

headers_sent

(PHP 3 >= 3.0.8, PHP 4, PHP 5)headers_sent -- Проверяет отправлены ли HTTP-заголовки клиенту и, если отправлены, то где

Описание

bool headers_sent ( [string &file [, int &line]] )


- headers_sent() возвращает FALSE, если HTTP заголовки еще не были отправлены клиенту, и TRUE в противоположном случае. Если были указаны необязательные параметры file и line, headers_sent() вернет имя файла и номер строки, где был начат вывод данных в переменные file и line соответственно.

- Вы не можете добавить новые заголовки при помощи функции header(), если заголовки уже были отправлены клиенту. Использование данной функции позволит вам лишь избежать сообщений об ошибках, связанных повторной отправкой HTTP-заголовков. Другой выход - использовать буферизацию вывода.

Замечание: Необязательные параметры file и line были добавлены в PHP 4.3.0.

-

Пример 1. Пример использования headers_sent()

<?php

// Если заголовки еще не отправлены, добавить
if (!headers_sent()) {
header('Location: http://www.example.com/');
exit;
}

// Пример использования опциональных параметров, добавленных в PHP 4.3.0
// Обратите внимание, что $filename и $linenum передаются для последующего
// использования. Не устанавливайте их предварительно!
if (!headers_sent($filename, $linenum)) {
header('Location: http://www.example.com/');
exit;

// Обычно здесь идет обработка ошибок.
} else {

echo
"Заголовки уже отправлены в $filename на строке $linenum\n" .
"Редирект невозможен, пожалуйста нажмите <a " .
"href=\"http://www.example.com\">Здесь</a> самостоятельно\n";
exit;
}

?>

- Смотрите также функции ob_start(), trigger_error(), и header() для более подробного обсуждения затронутых вопросов.

Пред.

Начало

След.

headers_list

Уровень выше

setcookie 22222

Free Web Hosting