Gửi yêu cầu HTTP POST bằng cách sử dụng file_get_contents
thực sự không khó như bạn đoán, bạn phải sử dụng thông số $context
.
Có một ví dụ được đưa ra trong cuốn hướng dẫn PHP, tại trang này: HTTP context options(trích dẫn):
$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);
Về cơ bản, bạn phải tạo một dòng suối, với các tùy chọn đúng (có một danh sách đầy đủ trên trang đó), và sử dụng nó như là tham số thứ ba để file_get_contents
- không có gì hơn ;-)
là một sidenote: nói chung, để gửi yêu cầu HTTP POST, chúng tôi có xu hướng sử dụng curl, cung cấp nhiều tùy chọn cho tất cả - nhưng luồng là một trong những điều tốt đẹp của PHP mà không ai biết về ... quá xấu ...
Nguồn
2010-03-15 05:44:26
http://php.net/manual/en/function.stream-context-create.php#89080 – Ben
này nên được bỏ phiếu tán vô hạn. Không có lý do gì để sử dụng Curl/Guzzle hoặc bất kỳ thư viện ưa thích nào khác nếu bạn có chức năng PHP thô thực hiện công việc. –