Rumah > pembangunan bahagian belakang > tutorial php > Bagaimanakah Saya Boleh Menghantar Data HTTP POST Menggunakan `file_get_contents()` PHP?

Bagaimanakah Saya Boleh Menghantar Data HTTP POST Menggunakan `file_get_contents()` PHP?

DDD
Lepaskan: 2024-12-20 11:57:09
asal
755 orang telah melayarinya

How Can I Send HTTP POST Data Using PHP's `file_get_contents()`?

Penghantaran Data POST HTTP menggunakan file_get_contents() PHP

Apabila cuba mengambil kandungan URL menggunakan fungsi file_get_contents() PHP, URL tertentu mungkin memerlukan pengeposan data. Untuk memenuhi keperluan ini, seseorang boleh menggunakan parameter stream_context.

Untuk membina konteks strim yang diperlukan, gunakan langkah berikut:

  1. Memulakan Data: Takrifkan tatasusunan yang mengandungi pasangan nilai kunci data untuk disiarkan (cth., ['var1' => 'beberapa kandungan']).
  2. Pasang Parameter: Cipta tatasusunan dengan 'http' sebagai kunci, mengandungi tatasusunan pilihan termasuk 'kaedah' (ditetapkan kepada 'POST'), 'pengepala ' (menentukan Jenis Kandungan) dan 'kandungan' (diisi dengan tatasusunan data).
  3. Tubuhkan Strim Konteks: Panggil stream_context_create() dengan tatasusunan parameter sebagai hujah untuk menjana konteks strim.
  4. Laksanakan Permintaan POST: Invoke file_get_contents() dengan URL sasaran, menyediakan strim konteks sebagai hujah ketiga. Ini memulakan permintaan HTTP POST dan mendapatkan semula respons.

Contoh Kod:

$postData = http_build_query([
    'var1' => 'some content',
    'var2' => 'doh'
]);

$opts = ['http' =>
    ['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);
Salin selepas log masuk

Dengan melaksanakan langkah-langkah ini, anda boleh menyerahkan data HTTP POST dengan berkesan menggunakan file_get_contents(). Walaupun curl menawarkan lebih banyak keupayaan, strim PHP menyediakan alternatif yang kurang terkenal tetapi sama berkuasa untuk operasi HTTP POST.

Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Menghantar Data HTTP POST Menggunakan `file_get_contents()` PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan