Warning: Cannot use a scalar value as an array in /home/admin/public_html/forum/include/fm.class.php on line 757

Warning: Invalid argument supplied for foreach() in /home/admin/public_html/forum/include/fm.class.php on line 770
Форумы портала PHP.SU :: Версия для печати :: Как записать заголовки ответа в переменную (CURL) ?
Форумы портала PHP.SU » » Работа с сетью » Как записать заголовки ответа в переменную (CURL) ?

Страниц (1): [1]
 

1. likesoft - 16 Июля, 2015 - 14:44:30 - перейти к сообщению
Всем привет Улыбка
Нужно записать в переменную заголовки ответа которые отображаются при помощи опции


пробовал добавлять опцию
но сервер возвращает ответ 501

подскажите как это можно сделать)
2. Строитель - 16 Июля, 2015 - 17:02:22 - перейти к сообщению
likesoft
3. likesoft - 16 Июля, 2015 - 17:20:45 - перейти к сообщению
Строитель пишет:
likesoft


Записывает весь результат, мне нужно записать только http заголовки
4. Строитель - 16 Июля, 2015 - 17:27:33 - перейти к сообщению
likesoft
PHP:
скопировать код в буфер обмена
  1. // При значении 1 CURL включает в вывод заголовки
  2. curl_setopt($ch, CURLOPT_HEADER, 1);
  3. // При значении 1 CURL включает в вывод тело документа
  4. curl_setopt($ch, CURLOPT_NOBODY, 1);
  5. // Куда помещать результат выполнения запроса:
  6. //  0 - в стандартный поток вывода,
  7. //  1 - в виде возвращаемого значения функции curl_exec.
  8. curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
  9.  

(Добавление)
Ну и сохранить в переменную
PHP:
скопировать код в буфер обмена
  1. $data = curl_exec($ch);
  2. // Вывести полученные данные
  3. //echo $data;
  4.  
5. likesoft - 16 Июля, 2015 - 17:58:33 - перейти к сообщению
Строитель пишет:
likesoft


Проблема в том что если использовать опцию curl_setopt($ch, CURLOPT_NOBODY, 1);

то сервер возвращает код ответа 501, так как метод запроса устанавливается в HEAD

пробовал делать вывод, потом парсить заголовки, но дело в том что там идет редирект и если записать $data = curl_exec($ch); то будет записан первый ответ без редиректа, а мне нужно чтобы был записан ответ конечной страницы, тоесть той которая выдается после прохода по всем редиректам.
(Добавление)
если просто вывожу ответ echo curl_exec($ch); то отображается так как надо, и все редиректы соблюдаются

p.s. опция curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1); установлена
6. esterio - 16 Июля, 2015 - 18:20:54 - перейти к сообщению
смотрите в сторону CURLOPT_HEADERFUNCTION
пример здесь
http://ontodevelopment[dot]blogspot[dot][dot][dot][dot]torial-with[dot]html
7. likesoft - 16 Июля, 2015 - 19:01:18 - перейти к сообщению
esterio пишет:
смотрите в сторону CURLOPT_HEADERFUNCTION
пример здесь
http://ontodevelopment.blogspot.com/2011/04/curloptheaderfunction-tutorial-with.html



Огромное вам спасибо Рот до ушей

 

Powered by ExBB FM 1.0 RC1