Maison > développement back-end > tutoriel php > « file_get_contents() » de PHP peut-il envoyer des en-têtes HTTP personnalisés ?

« file_get_contents() » de PHP peut-il envoyer des en-têtes HTTP personnalisés ?

Mary-Kate Olsen
Libérer: 2024-12-28 08:30:11
original
417 Les gens l'ont consulté

Can PHP's `file_get_contents()` Send Custom HTTP Headers?

La fonction file_get_contents() de PHP peut-elle envoyer des en-têtes HTTP ?

En PHP, file_get_contents() est une fonction d'E/S de fichier polyvalente qui permet vous pouvez également récupérer le contenu des URL. Cependant, il y a eu une certaine confusion quant à sa capacité à envoyer des en-têtes HTTP.

Au départ, file_get_contents() ne fournissait pas de moyen direct d'envoyer des en-têtes HTTP personnalisés. Il était généralement admis que la définition de ces en-têtes via le paramètre de l'agent utilisateur de php.ini était la seule option.

Cependant, après un examen plus approfondi de la documentation file_get_contents(), il a été découvert que les en-têtes HTTP peuvent effectivement être envoyés en utilisant le Fonction stream_context_create(). Voici un exemple :

// Create a stream context with custom HTTP headers
$opts = [
    "http" => [
        "method" => "GET",
        "header" => "Accept-language: en\r\n" .
            "Cookie: foo=bar\r\n"
    ]
];

// Create a stream context from the options
$context = stream_context_create($opts);

// Open the URL with the stream context
$file = file_get_contents('http://www.example.com/', false, $context);
Copier après la connexion

En suivant cette approche, vous pouvez désormais envoyer des en-têtes HTTP personnalisés avec file_get_contents(). Il est important de noter que cette méthode n'a pas été testée de manière approfondie, vous pouvez donc rencontrer des problèmes en fonction des en-têtes spécifiques et des configurations du serveur.

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal