


Bagaimana untuk menerima parameter tatasusunan yang diserahkan oleh Ajax dalam PHP
Apabila menulis aplikasi web, anda selalunya perlu menggunakan Ajax untuk menyerahkan borang atau menggunakan jenis data yang kompleks seperti tatasusunan untuk pemprosesan. Dalam PHP, adalah mudah untuk menerima parameter jenis data asas, tetapi menerima parameter jenis tatasusunan memerlukan beberapa pemprosesan khas. Artikel seterusnya akan membawa anda ke perbincangan mendalam tentang cara PHP menerima parameter tatasusunan yang dikemukakan oleh Ajax.
1. Beberapa cara untuk menyerahkan tatasusunan dengan Ajax
- Gunakan siri
Apabila pelanggan menggunakan alatan seperti jQuery untuk membuat permintaan Ajax, anda boleh Tatasusunan bersiri dan diserahkan. Contohnya, contoh berikut:
var data = { name: 'John', age: 25, hobbies: ['swimming', 'reading', 'coding'] }; $.ajax({ type: 'POST', url: 'test.php', data: {myData: JSON.stringify(data)}, success: function(res) { console.log(res); } });
Di bahagian pelayan, anda boleh menggunakan fungsi json_decode() untuk memulihkan rentetan JSON yang diterima ke dalam tatasusunan, seperti berikut:
$data = json_decode($_POST['myData'], true); $name = $data['name']; $age = $data['age']; $hobbies = $data['hobbies'];
Kaedah ini mudah Secara langsung, tetapi sila ambil perhatian: jumlah data yang diserahkan tidak boleh terlalu besar, jika tidak, ia akan menjejaskan prestasi.
- Gunakan FormData
Menggunakan objek FormData boleh mencapai penyerahan data borang yang lebih fleksibel. Contohnya, contoh berikut:
var data = { name: 'John', age: 25, hobbies: ['swimming', 'reading', 'coding'] }; var formData = new FormData(); formData.append('name', data.name); formData.append('age', data.age); $.each(data.hobbies, function(index, item) { formData.append('hobbies[]', item); }); $.ajax({ type: 'POST', url: 'test.php', data: formData, contentType: false, processData: false, success: function(res) { console.log(res); } });
Di bahagian pelayan, anda boleh menggunakan $_POST dan $_FILES untuk menerima data yang diserahkan oleh FormData, seperti berikut:
$name = $_POST['name']; $age = $_POST['age']; $hobbies = $_POST['hobbies'];
Ia harus diperhatikan bahawa: contentType dan Parameter processData mesti ditetapkan kepada palsu, jika tidak, penyerahan akan gagal.
- Lepasi tatasusunan terus
Jika anda menggunakan alatan seperti jQuery untuk penyerahan Ajax, anda boleh menghantar tatasusunan terus ke parameter data. Contohnya, contoh berikut:
var data = { name: 'John', age: 25, hobbies: ['swimming', 'reading', 'coding'] }; $.ajax({ type: 'POST', url: 'test.php', data: data, success: function(res) { console.log(res); } });
Di bahagian pelayan, anda boleh menggunakan $_POST untuk menerima parameter jenis tatasusunan, seperti berikut:
$name = $_POST['name']; $age = $_POST['age']; $hobbies = $_POST['hobbies'];
Kaedah ini mudah dan cekap , tetapi tidak cukup fleksibel.
2. Terima parameter tatasusunan
Tidak kira kaedah yang anda gunakan untuk menyerahkan parameter tatasusunan, pelayan memerlukan pemprosesan khas. PHP menyediakan pelbagai kaedah untuk menerima parameter tatasusunan.
- Gunakan $_POST
Jika anda menggunakan siri atau secara terus menghantar tatasusunan untuk penyerahan Ajax, anda boleh menggunakan $_POST untuk menerima parameter tatasusunan, seperti berikut:
$name = $_POST['name']; $age = $_POST['age']; $hobbies = $_POST['hobbies'];
Perlu diambil perhatian bahawa PHP hanya akan menerima 1000 elemen tatasusunan pertama secara lalai sebagai tambahan, jika tatasusunan berbilang dimensi diserahkan, ia perlu diproses dalam format JSON.
- Gunakan file_get_contents
Jika jumlah data yang diserahkan agak besar, anda boleh menggunakan fungsi file_get_contents untuk menerima parameter tatasusunan, seperti berikut:
$data = file_get_contents('php://input'); $jsonData = json_decode($data, true); $name = $jsonData['name']; $age = $jsonData['age']; $hobbies = $jsonData['hobbies'];
Ini Kaedah boleh menerima sejumlah besar data dan lebih fleksibel.
- Gunakan php://input
Gunakan php://input untuk turut menerima parameter tatasusunan, seperti berikut:
$data = file_get_contents('php://input'); parse_str($data, $arrayData); $name = $arrayData['name']; $age = $jsonData['age']; $hobbies = $arrayData['hobbies'];
Perkara untuk nota Ya: Data yang diterima dengan cara ini adalah daripada jenis rentetan dan memerlukan beberapa jenis penukaran.
3. Ringkasan
Apabila menggunakan Ajax untuk menyerahkan parameter tatasusunan, anda perlu memberi perhatian kepada isu seperti kaedah penghantaran, kaedah penerimaan dan jumlah data. Jika jumlah data adalah kecil, anda boleh menggunakan bersiri atau FormData untuk menyerahkannya jika jumlah data adalah besar, anda boleh menggunakan fungsi seperti file_get_contents dan parse_str untuk menerimanya. Melalui pengenalan artikel ini, saya percaya pembaca telah pun memahami cara PHP menerima parameter tatasusunan yang dikemukakan oleh Ajax. Tetapi perlu diingatkan bahawa beberapa penapisan dan pengesahan perlu dilakukan dalam kod untuk meningkatkan keselamatan data.
Atas ialah kandungan terperinci Bagaimana untuk menerima parameter tatasusunan yang diserahkan oleh Ajax dalam PHP. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



Kompilasi JIT Php 8 meningkatkan prestasi dengan menyusun kod yang sering dilaksanakan ke dalam kod mesin, memberi manfaat kepada aplikasi dengan pengiraan berat dan mengurangkan masa pelaksanaan.

Artikel ini membincangkan kelemahan OWASP 10 dalam strategi PHP dan mitigasi. Isu -isu utama termasuk suntikan, pengesahan yang rosak, dan XSS, dengan alat yang disyorkan untuk memantau dan mendapatkan aplikasi PHP.

Artikel ini membincangkan mendapatkan muat naik fail PHP untuk mengelakkan kelemahan seperti suntikan kod. Ia memberi tumpuan kepada pengesahan jenis fail, penyimpanan selamat, dan pengendalian ralat untuk meningkatkan keselamatan aplikasi.

Artikel ini membincangkan penyulitan simetri dan asimetrik dalam PHP, membandingkan kesesuaian, prestasi, dan perbezaan keselamatan mereka. Penyulitan simetri lebih cepat dan sesuai untuk data pukal, manakala asimetrik digunakan untuk pertukaran utama yang selamat.

Artikel ini membincangkan pelaksanaan pengesahan dan kebenaran yang mantap dalam PHP untuk mencegah akses yang tidak dibenarkan, memperincikan amalan terbaik dan mengesyorkan alat peningkatan keselamatan.

Artikel membincangkan mendapatkan data dari pangkalan data menggunakan PHP, meliputi langkah, langkah keselamatan, teknik pengoptimuman, dan kesilapan umum dengan penyelesaian.

Artikel ini membincangkan strategi untuk mencegah serangan CSRF di PHP, termasuk menggunakan token CSRF, kuki tapak yang sama, dan pengurusan sesi yang betul.

Artikel ini membincangkan fungsi mysqli_query () dan mysqli_fetch_assoc () dalam PHP untuk interaksi pangkalan data MySQL. Ia menerangkan peranan, perbezaan, dan memberikan contoh praktikal penggunaannya. Hujah utama memberi tumpuan kepada manfaat usin
