Mengirim permintaan HTTP POST menggunakan file_get_contentstidak sulit, sebenarnya: seperti yang Anda duga, Anda harus menggunakan $contextparameter.
Ada contoh yang diberikan dalam manual PHP, di halaman ini: Opsi konteks HTTP (mengutip) :
$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);
Pada dasarnya, Anda harus membuat aliran, dengan opsi yang tepat (ada daftar lengkap di halaman itu) , dan menggunakannya sebagai parameter ketiga untuk file_get_contents- tidak lebih ;-)
Sebagai sidenote: secara umum, untuk mengirim permintaan HTTP POST, kita cenderung menggunakan curl, yang menyediakan banyak pilihan, tetapi stream adalah salah satu hal yang menyenangkan dari PHP yang tidak diketahui oleh siapa pun ... terlalu buruk .. .