Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Melaksanakan Permintaan HTTP POST Menggunakan PHP cURL?

Bagaimana untuk Melaksanakan Permintaan HTTP POST Menggunakan PHP cURL?

Linda Hamilton
Linda Hamiltonasal
2024-12-29 20:47:18610semak imbas

How to Perform an HTTP POST Request Using PHP cURL?

Contoh POST HTTP cURL PHP

Apabila bekerja dengan aplikasi web, selalunya perlu menghantar permintaan HTTP ke pelayan jauh. Dalam PHP, sambungan cURL menyediakan cara yang berkuasa dan serba boleh untuk mencapai ini. Artikel ini menunjukkan cara melaksanakan HTTP POST menggunakan PHP cURL.

Pernyataan Masalah

Andaikan kami ingin menghantar data berikut ke www.example.com:

username=user1, password=passuser1, gender=1

Tindak balas yang dijangkakan daripada pelayan ialah "result=OK".

Penyelesaian PHP cURL

Untuk menghantar permintaan HTTP POST dengan PHP cURL, ikut langkah berikut:

  1. Mulakan sesi cURL menggunakan curl_init():
$ch = curl_init();
  1. Tetapkan URL pelayan jauh menggunakan curl_setopt():
curl_setopt($ch, CURLOPT_URL, "http://www.example.com/tester.phtml");
  1. Nyatakan bahawa ini adalah permintaan HTTP POST menggunakan CURLOPT_POST:
curl_setopt($ch, CURLOPT_POST, true);
  1. Bina data POST menggunakan http_build_query() dan tetapkannya menggunakan CURLOPT_POSTFIELDS:
curl_setopt($ch, CURLOPT_POSTFIELDS, http_build_query(array('postvar1' => 'value1')));
  1. Ambil respons pelayan menggunakan curl_exec() dan tetapkan CURLOPT_RETURNTRANSFER kepada benar:
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($ch);
  1. Tutup sesi cURL menggunakan curl_close():
curl_close($ch);
  1. Proses respons pelayan seperti yang dikehendaki:
if ($server_output == "OK") { ... } else { ... }

Kod Contoh

Berikut ialah contoh PHP lengkap yang menunjukkan langkah di atas:

// A very simple PHP example that sends a HTTP POST to a remote site

$ch = curl_init();

curl_setopt($ch, CURLOPT_URL, "http://www.example.com/tester.phtml");
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, 
          http_build_query(array('postvar1' => 'value1')));

// Receive server response ...
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$server_output = curl_exec($ch);

curl_close($ch);

// Further processing ...
if ($server_output == "OK") { ... } else { ... }

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Permintaan HTTP POST Menggunakan PHP cURL?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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