PHP GET Request, отправка заголовков

Мне нужно выполнить запрос на получение и отправить вместе с ним заголовки. Что я могу использовать для этого?

Главный заголовок, который мне нужно установить, – это браузер. Есть простой способ сделать это?

Если вы используете cURL, вы можете использовать curl_setopt ($handle, CURLOPT_USERAGENT, 'browser description') чтобы определить заголовок пользователя-агента запроса.

Если вы используете file_get_contents , проверьте эту настройку примера на странице man для file_get_contents :

 // Create a stream $opts = array( 'http'=>array( 'method'=>"GET", 'header'=>"Accept-language: en\r\n" . "Cookie: foo=bar\r\n" . "User-agent: BROWSER-DESCRIPTION-HERE\r\n" ) ); $context = stream_context_create($opts); // Open the file using the HTTP headers set above $file = file_get_contents('http://www.example.com/', false, $context); 

Если вы запрашиваете страницу, используйте cURL .

Чтобы установить заголовки (в этом случае заголовок User-Agent в HTTP-запросе, вы должны использовать этот синтаксис:

 <?php $curl_h = curl_init('http://www.example.com/'); curl_setopt($curl_h, CURLOPT_HTTPHEADER, array( 'User-Agent: NoBrowser v0.1 beta', ) ); # do not output, but store to variable curl_setopt($curl_h, CURLOPT_RETURNTRANSFER, true); $response = curl_exec($curl_h); 

Вы можете использовать функцию header для этого, например:

 header('Location: http://www.example.com?var=some_value'); 

Обратите внимание, что:

Помните, что header () должен быть вызван до отправки любого фактического результата либо с помощью обычных тегов HTML, пустых строк в файле, либо из PHP. Очень распространенная ошибка для чтения кода с функциями include () или require (), функций или другой функции доступа к файлам, а также пробелы или пустые строки, которые выводятся перед вызовом header (). Та же проблема существует при использовании одного файла PHP / HTML.