watch your case when using methods (POST and GET)...it must be always uppercase. in case of you write it in lower case it wont work.
Options de contexte HTTP
Options de contexte HTTP — Liste des options de contexte HTTP
Description
Options de contexte pour les protocoles http:// et https://.
Historique
| Version | Description |
|---|---|
| 5.3.4 |
Ajout du paramètre follow_location.
|
| 5.3.0 |
Le paramètre protocol_version supporte les
transferts chunked lorsqu'on lui assigne
la valeur 1.1.
|
| 5.2.10 |
Ajout du paramètre ignore_errors.
|
| 5.2.10 |
Le paramètre header peut désormais être
un tableau indexé numériquement.
|
| 5.2.1 |
Ajout du paramètre timeout.
|
| 5.1.0 | Ajout de la possibilité d'utiliser des proxy HTTPS. |
| 5.1.0 |
Ajout du paramètre max_redirects.
|
| 5.1.0 |
Ajout du paramètre protocol_version.
|
Exemples
Exemple #1 Récupération d'une page et envoi de données POST
<?php
$postdata = http_build_query(
array(
'var1' => 'du contenu',
'var2' => 'doh'
)
);
$opts = array('http' =>
array(
'method' => 'POST',
'header' => 'Content-type: application/x-www-form-urlencoded',
'content' => $postdata
)
);
$context = stream_context_create($opts);
$result = file_get_contents('http://example.com/submit.php', false, $context);
?>
Exemple #2 Ignore les redirections mais récupère les en-têtes et le contenu
<?php
$url = "http://www.example.org/header.php";
$opts = array('http' =>
array(
'method' => 'GET',
'max_redirects' => '0',
'ignore_errors' => '1'
)
);
$context = stream_context_create($opts);
$stream = fopen($url, 'r', false, $context);
// informations sur les en-têtes et métadonnées du flux
var_dump(stream_get_meta_data($stream));
// données actuelles de $url
var_dump(stream_get_contents($stream));
fclose($stream);
?>
Notes
Note: Options de contexte du flux sous-jacent
Des options de contexte supplémentaires peuvent être supportées par le transport sous-jacent. Pour les flux http://, référez-vous aux options de contexte du transport tcp://. Pour les flux https://, référez-vous aux options de contexte du transport ssl://.
Note: Ligne de statut HTTP
Lorsque ce gestionnaire de flux suit une redirection, wrapper_data, retourné par la fonction stream_get_meta_data() ne doit pas contenir obligatoirement la ligne de statut HTTP qui s'applique à des données de contenu à l'index 0.La première requête retourne une 301 (redirection permanente), ainsi, le gestionnaire de flux suit automatiquement la redirection pour récupérer une réponse 200 (index = 4).array ( 'wrapper_data' => array ( 0 => 'HTTP/1.0 301 Moved Permantenly', 1 => 'Cache-Control: no-cache', 2 => 'Connection: close', 3 => 'Location: http://example.com/foo.jpg', 4 => 'HTTP/1.1 200 OK', ...
Note that if the server is not able to 'getaddresses' change the name to an ip address and that'll sort that out for internal looking calls and posts.
