Rumah > Artikel > pembangunan bahagian belakang > php post json string array?
Semasa pembangunan, kami sering menghadapi situasi di mana kami perlu menggunakan tatasusunan rentetan JSON. Format tatasusunan rentetan JSON agak istimewa dan sering digunakan untuk menghantar satu siri parameter atau data. Sebagai bahasa pengaturcaraan back-end yang biasa digunakan, PHP boleh menghantar tatasusunan rentetan JSON melalui permintaan POST.
Pertama, kita perlu mencipta tatasusunan rentetan JSON dengan format berikut:
[{key1: value1, key2: value2}, {key1: value1, key2: value2}, ...]
di mana setiap elemen ialah objek JSON dengan kunci dan nilainya sendiri. Dalam PHP, kita boleh menggunakan fungsi json_encode()
untuk menukar tatasusunan PHP kepada rentetan berformat JSON.
Berikut ialah contoh kod PHP yang melaksanakan fungsi menghantar tatasusunan rentetan JSON melalui permintaan POST:
// PHP code to send a POST request with a JSON string array // Define the JSON string array $data = array( array("name" => "Alice", "age" => 25), array("name" => "Bob", "age" => 30), array("name" => "Charlie", "age" => 35) ); // Encode the data to a JSON string $data_json = json_encode($data); // Set the content type and content length headers header("Content-Type: application/json"); header("Content-Length: " . strlen($data_json)); // Create a new cURL handle $ch = curl_init(); // Set the cURL options curl_setopt($ch, CURLOPT_URL, "https://example.com/api"); curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); curl_setopt($ch, CURLOPT_POST, true); curl_setopt($ch, CURLOPT_POSTFIELDS, $data_json); // Execute the cURL request $result = curl_exec($ch); // Handle any errors that occurred if (curl_errno($ch)) { $error_msg = curl_error($ch); // Handle the error } // Close the cURL handle curl_close($ch); // Handle the response from the server echo $result;
Dalam kod di atas, kami mula-mula menentukan tatasusunan data, yang mengandungi Tiga objek JSON. Kami kemudian menggunakan fungsi json_encode()
untuk mengekod tatasusunan ini ke dalam rentetan berformat JSON. Seterusnya, kami menetapkan Jenis Kandungan dan Panjang Kandungan pengepala HTTP untuk memastikan permintaan yang kami hantar mempunyai format dan panjang yang betul. Kemudian, kami memulakan pemegang cURL baharu melalui fungsi curl_init()
perpustakaan cURL dan menetapkan pilihan cURL yang diperlukan. Akhir sekali, kami melaksanakan permintaan melalui fungsi curl_exec()
dan mengendalikan sebarang ralat yang mungkin berlaku dalam permintaan. Akhir sekali, kami menutup pemegang cURL dan mencetak respons sebelah pelayan.
Dalam kod di atas, kami telah menggunakan perpustakaan cURL untuk menghantar permintaan POST. Sudah tentu, anda juga boleh menggunakan fungsi PHP sendiri seperti file_get_contents()
untuk mencapai fungsi yang serupa.
Secara umum, PHP boleh menghantar tatasusunan rentetan JSON. Kami hanya perlu menukar tatasusunan PHP kepada rentetan berformat JSON dan menetapkan pengepala HTTP yang betul. Menggunakan pustaka cURL untuk menghantar permintaan POST ialah kaedah pelaksanaan biasa, yang boleh memastikan permintaan POST kami mempunyai kebolehpercayaan dan fleksibiliti yang lebih tinggi.
Atas ialah kandungan terperinci php post json string array?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!