(краткое содержание)
В предыдущем уроке Вы изучили, что такое запрос, его структуру и что такое
заголовки запроса.
Это прекрасно! Но как быть, если Вам необходимо изменить или добавить
заголовок в запрос браузера серверу?
В PHP существует функция header(), которая позволяет добавить заголовок,
или изменить существующий в случае, если он размещается в единственном числе
в поле заголовков.
int header(string $string)
Пример функции:
header(“Location: http://google.com”)
Так, функция header() добавит в поле заголовков строку “Location:
http://google.com”.
Заголовок Location отвечает за перенаправление браузера по указанному
адресу.
При использовании функции header() нужно помнить об одной важной детали
– использовать ее можно только до любого оператора вывода в сценарии,
например echo. Здесь важным моментом также является тот факт, что в скриптах
PHP любой символ, даже пробел, расположенный до конструкции <?php и после ?>
также считается оператором вывода.
Для случаев, когда необходимо выяснить, был ли использован оператор
вывода и, следовательно, отправлены заголовки запроса, можно использовать
функцию headers_sent():
bool headers_sent([string &$file, int &$line])
Функция возвращает true, если заголовки были отправлены. Кроме того, она
может поместить в $file имя файла, а в $line – номер строки, в которых был
произведен вывод заголовков.
Получение заголовков
Заранее стоит сказать, что получить список заголовков можно до их отправки
и после.
Для получения списка заголовков до их отправки из специального буфера в
браузер, а из него на сервер, можно использовать функцию:
list header_list()
возвращающую все содержащиеся в буфере заголовки в виде:
Header_name: Header_value
Для получения заголовков запроса, переданных сценарию, их необходимо
обработать, соответствующим образом поместив в ассоциативный массив и
вывести его на экран.
Преобразовать список заголовков в массив можно функцией:
array getallheaders().
Давайте преобразуем листинг 38.1 из предыдущего урока с помощью функции
getallheaders()
Листинг 39.1. Вывод заголовков запроса на экран браузера
1
Лекции курса PHP7 + MySQL с нуля
(краткое содержание)