L'envoi d'une requête HTTP POST en utilisant file_get_contents
n'est pas si difficile, en fait: comme vous l'avez deviné, vous devez utiliser le paramètre $context
.
Il y a un exemple donné dans le manuel PHP, à cette page: HTTP context options(citant):
$postdata = http_build_query(
array(
'var1' => 'some content',
'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);
Fondamentalement, vous devez créer un flux, avec les bonnes options (il y a une liste complète sur cette page), et l'utiliser comme troisième paramètre à file_get_contents
- rien de plus ;-)
en sidenote: D'une manière générale, pour envoyer des requêtes HTTP POST, nous avons tendance à utiliser curl, qui fournit beaucoup d'options mais les flux sont l'une des choses sympas de PHP que personne ne connaît ... dommage ...
http://php.net/manual/en/function.stream-context-create.php#89080 – Ben
Cela devrait être upvoted infiniment. Il n'y a aucune raison d'utiliser Curl/Guzzle ou toute autre bibliothèque sophistiquée si vous avez des fonctionnalités PHP brutes qui font le travail. –