Définition des en-têtes HTTP avec file_get_contents() de PHP
Introduction :
La fonction file_get_contents() de PHP permet récupération du contenu du fichier via une URL. Cependant, pouvons-nous étendre sa fonctionnalité pour transmettre des en-têtes HTTP parallèlement à la requête ?
Répondre à la question :
Bien que file_get_contents() ne prenne pas en charge nativement l'envoi d'en-têtes HTTP, il existe une alternative solution utilisant des contextes de flux.
Mise en œuvre :
Pour spécifier les en-têtes HTTP, créez un contexte de flux à l'aide de stream_context_create() et incluez les en-têtes souhaités dans le tableau "http", en utilisant la syntaxe suivante :
$opts = [ "http" => [ "method" => "GET", "header" => "Accept-language: en\r\n" . "Cookie: foo=bar\r\n" ] ];
Ensuite, fournissez ce contexte à file_get_contents() comme troisième paramètre, comme indiqué ci-dessous :
$file = file_get_contents('http://www.example.com/', false, $context);
Conclusion :
Cette solution nous permet de définir des en-têtes HTTP personnalisés lors de l'utilisation de file_get_contents(), nous permettant de contrôler le comportement de la requête et potentiellement d'améliorer ses fonctionnalités.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!