PHP: get_headers устанавливает временный stream_context

Я полагаю, что PHP get_headers не позволяет использовать контекст, поэтому мне нужно изменить контекст потока по умолчанию, чтобы получить только HEAD запроса. Это вызывает некоторые проблемы с другими запросами на странице. Кажется, я не могу понять, как сбросить контекст потока по умолчанию. Я пробую что-то вроде:

$default = stream_context_get_default(); //Get default stream context so we can reset it
stream_context_set_default( //Only fetch the HEAD
      array(
    'http' => array(
       'method' => 'HEAD'
     )
  )
);
$headers = get_headers($url, 1); //Url can be whatever you want it to be
//var_dump($headers);
var_dump($default);
stream_context_set_default($default); //This doesn't work as it expects an array and not a resource pointer

Кто-нибудь знает, как исправить это?

Я знаю, что предлагалось использовать Curl, но я бы предпочел не использовать это. Спасибо!

7
задан Senica Gonzalez 8 December 2011 в 10:16
поделиться