Maison >développement back-end >tutoriel php >Comment puis-je envoyer des en-têtes HTTP avec file_get_contents() de PHP ?

Comment puis-je envoyer des en-têtes HTTP avec file_get_contents() de PHP ?

Patricia Arquette
Patricia Arquetteoriginal
2024-12-11 11:15:09842parcourir

How Can I Send HTTP Headers with PHP's file_get_contents()?

Envoi d'en-têtes HTTP avec file_get_contents() de PHP

Bien que la fonction file_get_contents() de PHP n'offre pas de prise en charge directe pour l'envoi d'en-têtes HTTP, il existe des approches alternatives pour y parvenir.

Une méthode consiste à créer un contexte de flux et à configurer les en-têtes HTTP dans il. Cela implique de configurer un tableau appelé $opts qui spécifie la méthode HTTP (GET dans cet exemple) et d'ajouter les en-têtes souhaités dans la clé d'en-tête. Par exemple :

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

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

Une fois le contexte de flux créé, vous pouvez le passer comme troisième argument à file_get_contents() pour envoyer les en-têtes HTTP avec la requête :

// Send the request with headers
$file = file_get_contents('http://www.example.com/', false, $context);

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!

Déclaration:
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