Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimanakah php menerima tatasusunan json dan menukar tatasusunan

Bagaimanakah php menerima tatasusunan json dan menukar tatasusunan

PHPz
Lepaskan: 2023-04-18 16:03:50
asal
1014 orang telah melayarinya

Apabila membangunkan aplikasi web, selalunya perlu menggunakan format data JSON untuk menghantar dan menerima data. Sebagai pembangun PHP, kami selalunya perlu menukar data JSON yang dihantar dari bahagian hadapan kepada tatasusunan PHP untuk diproses. Dalam siaran ini, kami akan mengajar anda cara menukar tatasusunan JSON yang diterima menjadi tatasusunan PHP menggunakan PHP.

  1. Terima data JSON

Untuk menukar data JSON kepada tatasusunan PHP, anda perlu menerima data JSON terlebih dahulu. Kami boleh menerima data JSON menggunakan tatasusunan $_POST atau $_GET dalam PHP.

Sebagai contoh, jika bahagian hadapan menghantar data JSON berikut melalui permintaan POST:

{
    "name": "张三",
    "age": 25,
    "address": "北京市朝阳区"
}
Salin selepas log masuk

Kemudian dalam PHP, kita boleh menggunakan kod berikut untuk menerima data JSON dan menyimpannya dalam pembolehubah $json :

$json = $_POST['json']; // 假设json参数是前端发送的JSON数据
Salin selepas log masuk
  1. Tukar data JSON kepada tatasusunan PHP

Selepas menerima data JSON, kita perlu menukarnya kepada tatasusunan PHP. PHP menyediakan fungsi terbina dalam json_decode() untuk melakukan ini. Sintaks fungsi ini ialah:

mixed json_decode(string $json, bool $assoc = false, int $depth = 512, int $options = 0)
Salin selepas log masuk

di mana $json ialah data JSON yang hendak dinyahkod, $assoc ialah nilai Boolean pilihan yang digunakan untuk menunjukkan sama ada hendak menukar objek JSON kepada tatasusunan bersekutu (lalai ialah false (iaitu, menukar objek JSON kepada objek standard), $depth ialah integer pilihan yang digunakan untuk menentukan kedalaman maksimum struktur rekursif penyahkod (lalai ialah 512), $options ialah integer pilihan yang digunakan untuk menentukan penyahkod Pelbagai pilihan untuk tingkah laku (lalai 0).

Kami boleh menukar data JSON yang diterima kepada tatasusunan PHP menggunakan kod berikut:

$data = json_decode($json, true); // 将JSON数据转换为关联数组
Salin selepas log masuk

Perhatikan bahawa jika parameter $assoc tidak ditetapkan kepada benar, fungsi json_decode() akan kembalikan objek Standard dan bukannya tatasusunan. Oleh itu, pastikan anda ingat untuk menetapkan parameter ini kepada benar apabila memanggil fungsi ini.

  1. Memproses Tatasusunan PHP

Setelah data JSON berjaya ditukar menjadi tatasusunan PHP, kami boleh melakukan apa sahaja dengannya. Sebagai contoh, kita boleh mengeluarkan nilai beberapa elemen tatasusunan:

echo $data['name'];     // 将输出"张三"
echo $data['age'];      // 将输出25
echo $data['address'];  // 将输出"北京市朝阳区"
Salin selepas log masuk

Atau kita boleh melakukan gelung ke atas tatasusunan:

foreach ($data as $key => $value) {
    echo $key . ': ' . $value . '<br />';
}
Salin selepas log masuk

Bagaimanapun, setelah data JSON adalah ditukar kepada tatasusunan PHP, kami Anda kemudian boleh memanipulasinya seperti tatasusunan PHP yang lain.

Ringkasnya, artikel ini memperincikan cara menukar tatasusunan JSON yang diterima kepada tatasusunan PHP. Cara anda menggunakan teknik ini bergantung pada keperluan khusus aplikasi yang anda bangunkan. Walau bagaimanapun, tutorial ini menyediakan pengetahuan asas yang diperlukan oleh pembangun supaya mereka boleh menggunakannya mengikut keperluan mereka.

Atas ialah kandungan terperinci Bagaimanakah php menerima tatasusunan json dan menukar tatasusunan. 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