Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich HTTP-Header festlegen, wenn ich PHPs file_get_contents() verwende?
HTTP-Header mit PHPs file_get_contents() festlegen
Einführung:
PHPs file_get_contents()-Funktion ermöglicht das Abruf von Dateiinhalten über eine URL. Können wir seine Funktionalität jedoch erweitern, um neben der Anfrage auch HTTP-Header zu übertragen?
Beantwortung der Frage:
Obwohl file_get_contents() das Senden von HTTP-Headern nicht nativ unterstützt, gibt es eine Alternative Lösung mit Stream-Kontexten.
Implementierung:
Um HTTP-Header anzugeben, erstellen Sie Erstellen Sie einen Stream-Kontext mit stream_context_create() und fügen Sie die gewünschten Header in das Array „http“ ein, indem Sie die folgende Syntax verwenden:
$opts = [ "http" => [ "method" => "GET", "header" => "Accept-language: en\r\n" . "Cookie: foo=bar\r\n" ] ];
Anschließend stellen Sie diesen Kontext für file_get_contents() als dritten Parameter bereit, wie unten gezeigt :
$file = file_get_contents('http://www.example.com/', false, $context);
Fazit:
Diese Lösung ermöglicht es uns, benutzerdefinierte HTTP-Header festzulegen Bei der Verwendung von file_get_contents() können wir das Anforderungsverhalten steuern und möglicherweise seine Funktionalität verbessern.
Das obige ist der detaillierte Inhalt vonWie kann ich HTTP-Header festlegen, wenn ich PHPs file_get_contents() verwende?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!