Dans PHP, Stream_Context_Create () et Stream_Context_get_Options () sont des fonctions utiles pour gérer et afficher les configurations de demande HTTP. Ils peuvent aider les développeurs à configurer les demandes de réseau via un contexte, en particulier lors de l'utilisation de File_get_Contents () ou d'autres fonctions de manipulation de flux, pour contrôler les paramètres et le comportement de la demande. Dans cet article, nous vous montrerons comment utiliser ces deux fonctions pour gérer et afficher les options de configuration pour les demandes HTTP avec des exemples simples.
Stream_Context_Create () est utilisé pour créer un contexte de flux qui peut spécifier des options personnalisées pour les demandes HTTP, telles que le serveur proxy, l'en-tête de demande, l'heure du délai d'expiration, etc.
<?php
// Définir demandé HTTP Options
$options = [
'http' => [
'method' => 'GET',
'header' => "Accept-language: en\r\n",
'timeout' => 60, // Définissez le délai de demande sur60Deuxième
]
];
// Créer un HTTP Contexte
$context = stream_context_create($options);
// 通过Contexte发起 HTTP demander
$url = "http://m66.net/some/path";
$response = file_get_contents($url, false, $context);
// Contenu de réponse de sortie
echo $response;
?>
Dans le code ci-dessus, nous créons un contexte contenant une configuration HTTP via Stream_Context_create () . Dans ce contexte, nous définissons la méthode HTTP de la demande pour obtenir et définir l'en-tête de demande et le délai d'expiration.
Une fois que vous avez créé un contexte, vous pouvez utiliser stream_context_get_options () pour afficher les options de configuration dans le contexte actuel. Ceci est très utile pour le débogage et la vérification des configurations.
<?php
// 获取当前Contexte的配置Options
$options = stream_context_get_options($context);
// 输出配置Options
echo '<pre>';
print_r($options);
echo '</pre>';
?>
Dans le code ci-dessus, Stream_Context_get_Options () renvoie un tableau contenant les informations de configuration de contexte actuelles. Ce tableau affiche toutes les options de configuration HTTP définies via stream_context_create () .
En plus d'obtenir des demandes, vous pouvez également utiliser Stream_Context_create () pour envoyer des demandes de publication, passer des données et afficher les configurations connexes.
<?php
// installation POST demander的 HTTP Options
$options = [
'http' => [
'method' => 'POST',
'header' => "Content-Type: application/x-www-form-urlencoded\r\n",
'content' => http_build_query(['key1' => 'value1', 'key2' => 'value2']),
'timeout' => 60, // Définissez le délai de demande sur60Deuxième
]
];
// 创建Contexte
$context = stream_context_create($options);
// envoyer POST demander
$url = "http://m66.net/api/submit";
$response = file_get_contents($url, false, $context);
// Contenu de réponse de sortie
echo $response;
// 获取并显示当前配置Options
$options = stream_context_get_options($context);
echo '<pre>';
print_r($options);
echo '</pre>';
?>
Stream_Context_create () prend en charge de nombreuses options de configuration HTTP. Voici quelques options de configuration courantes:
Méthode : Méthodes HTTP (telles que GET, POST, PUST, DELETE, ETC.)
En-tête : l'en-tête de demande est spécifié sous forme de chaîne (tel que le type de contenu , l'agent utilisateur , etc.)
Contenu : le contenu envoyé (principalement utilisé pour les demandes de poste)
Timeout : Demandez le délai d'attente (unité: secondes)
Proxy : Paramètres du serveur proxy
user_agent : définissez l'en-tête utilisateur-agent
stream_context_create () et stream_context_get_options () Fournissent un moyen simple et puissant de gérer et d'afficher les options de configuration pour les demandes HTTP. Avec ces outils, vous pouvez facilement définir des options personnalisées pour les opérations de streaming en PHP telles que file_get_contents () pour des demandes de réseau plus efficaces et flexibles. La maîtrise de ces méthodes vous aidera à obtenir un meilleur contrôle sur les demandes HTTP et à déboguer vos applications.