Wysłanie żądania HTTP POST przy użyciu file_get_contents
nie jest takie trudne, ponieważ: jak można się domyślić, należy użyć parametru $context
.
Jest to przykład podano w podręczniku PHP, na tej stronie: HTTP context options(cytowanie):
$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);
Zasadniczo trzeba utworzyć strumień, z odpowiednimi opcjami (istnieje pełna lista na tej stronie) i używać go jako trzeci parametr file_get_contents
- nic więcej ;-)
jak sidenote: mówiąc ogólnie, aby wysyłać żądania HTTP POST, mamy tendencję do używania curl, który zapewnia wiele opcji, ale strumienie są jedną z miłych rzeczy w PHP, o których nikt nie wie ... szkoda ...
http://php.net/manual/en/function.stream-context-create.php#89080 – Ben
ten powinien być upvoted nieskończoność. Nie ma powodu, aby używać Curl/Guzzle lub jakiejkolwiek innej wyszukanej biblioteki, jeśli masz surową funkcjonalność PHP, która wykonuje tę pracę. –