Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk meletakkan tatasusunan dalam URL dan menghantarnya dalam php

Bagaimana untuk meletakkan tatasusunan dalam URL dan menghantarnya dalam php

PHPz
PHPzasal
2023-04-26 09:21:541242semak imbas

Dalam PHP, anda boleh menggunakan tatasusunan untuk menyimpan set data dan menghantar data ke halaman atau sistem lain dalam format tertentu. Meletakkan tatasusunan dalam URL dan menghantarnya adalah cara biasa.

Mengirim tatasusunan dalam URL boleh dicapai dalam dua cara berikut:

  1. Gunakan kaedah permintaan GET dan sirikan tatasusunan

GET kaedah permintaan boleh menambahkan data ke penghujung URL dalam bentuk pasangan nilai kunci, dan kami boleh mensiri tatasusunan dan kemudian menghantar rentetan bersiri melalui lampiran URL.

dilaksanakan seperti berikut:

<?php
// 将数组进行序列化,结果是一个字符串
$data = array(&#39;name&#39;=>'张三', 'age'=>18, 'sex'=>'男');
$queryString = http_build_query($data);

// 假设当前页面的url是http://www.example.com/test.php,将序列化后的字符串追加在url的末尾即可
$url = 'http://www.example.com/test.php?' . $queryString;
echo $url; // 输出结果:http://www.example.com/test.php?name=%E5%BC%A0%E4%B8%89&age=18&sex=%E7%94%B7
?>

Dalam contoh di atas, kami menggunakan fungsi http_build_query() untuk mensiri tatasusunan. Fungsi ini menukar tatasusunan kepada rentetan berkod URL. Pada masa yang sama, kami menambahkan rentetan bersiri pada hujung URL halaman semasa untuk menjana URL baharu.

Apabila penerima menerima data dalam URL, kami perlu menggunakan $_GET pembolehubah super global:

<?php
// test.php
print_r($_GET); // 输出结果:Array ( [name] => 张三 [age] => 18 [sex] => 男 )
?>

Dalam kod di atas, kami menggunakan $_GET super pembolehubah global untuk mendapatkan Data dalam URL, dan gunakan fungsi print_r() untuk mencetak data.

  1. Gunakan kaedah permintaan POST dan letakkan tatasusunan terus dalam badan permintaan

Kaedah permintaan POST boleh memindahkan data ke badan permintaan di sebelah pelayan, dan kami boleh Array dihantar terus sebagai data dalam badan permintaan.

Pelaksanaannya adalah seperti berikut:

<?php
// 创建一个数组
$data = array(&#39;name&#39;=>'张三', 'age'=>18, 'sex'=>'男');

// 初始化CURL,设置请求的URL、请求方式、请求体等参数
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, 'http://www.example.com/test.php');
curl_setopt($ch, CURLOPT_POST, true);
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

// 执行请求并获取响应内容
$response = curl_exec($ch);
curl_close($ch);

echo $response;
?>

Dalam contoh di atas, kami menggunakan perpustakaan cURL untuk menghantar permintaan POST dan meletakkan tatasusunan terus dalam badan permintaan. Di bahagian pelayan, kita boleh menggunakan $_POST pembolehubah super global untuk mendapatkan data yang dihantar oleh permintaan POST:

<?php
// test.php
print_r($_POST); // 输出结果:Array ( [name] => 张三 [age] => 18 [sex] => 男 )
?>

Dalam kod di atas, kami menggunakan $_POST pembolehubah super global untuk mendapatkan data yang dihantar oleh permintaan POST , dan gunakan fungsi print_r() untuk mencetak data.

Kesimpulan

Mengirim tatasusunan dalam URL ialah kaedah penghantaran data biasa, tetapi perlu diingat bahawa saiz dan keselamatan data perlu diambil kira semasa menghantar data. Kita boleh memilih kaedah penghantaran data yang sesuai untuk melengkapkan penghantaran data mengikut situasi sebenar.

Atas ialah kandungan terperinci Bagaimana untuk meletakkan tatasusunan dalam URL dan menghantarnya dalam php. 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