Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menukar tatasusunan json kepada php

Bagaimana untuk menukar tatasusunan json kepada php

PHPz
Lepaskan: 2023-04-25 16:06:51
asal
583 orang telah melayarinya

Pengenalan:

JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang digunakan secara meluas kerana ciri pengedaran, kebolehbacaan dan penghuraian yang mudah. PHP ialah bahasa skrip sebelah pelayan sumber terbuka yang biasanya digunakan untuk pembangunan laman web dinamik. Artikel ini akan memperkenalkan cara menukar tatasusunan JSON ke dalam format PHP.

Teks:

Tatasusunan JSON ialah koleksi pasangan nilai kunci, seperti {"name":"John", "age":30, "city":"New York" } . Dalam PHP, anda boleh menggunakan fungsi json_decode() untuk menukar rentetan JSON kepada tatasusunan PHP. Berikut ialah contoh mudah:

$json = '{"name":"John", "age":30, "city":"New York"}';
$phpArray = json_decode($json, true); // 第二个参数为true表示返回数组类型
print_r($phpArray);
Salin selepas log masuk

Outputnya ialah:

Array
(
    [name] => John
    [age] => 30
    [city] => New York
)
Salin selepas log masuk

Dalam contoh di atas, $json ialah rentetan JSON, gunakan fungsi json_decode() untuk menyahkodnya Tukarkannya kepada tatasusunan $phpArray, dan gunakan fungsi print_r() untuk mengeluarkan kandungan tatasusunan $phpArray. Antaranya, parameter kedua adalah benar untuk mengembalikan jenis tatasusunan, jika tidak ia mengembalikan jenis objek. Jika parameter kedua tidak dinyatakan, jenis objek dikembalikan secara lalai.

Jika terdapat tatasusunan JSON atau objek JSON lain yang bersarang dalam tatasusunan JSON, anda boleh menggunakan kaedah rekursif untuk menukarnya kepada tatasusunan PHP. Berikut ialah contoh:

$json = '{
    "name": "John",
    "age": 30,
    "city": "New York",
    "job": {
        "title": "Software Engineer",
        "company": "Google"
    },
    "languages": ["PHP", "JavaScript", "Python"]
}';
$phpArray = json_decode($json, true);

function convertJson($json)
{
    $result = array();
    foreach ($json as $key => $value) {
        if (is_array($value) || is_object($value)) {
            $result[$key] = convertJson((array)$value);
        } else {
            $result[$key] = $value;
        }
    }
    return $result;
}

$phpArray = convertJson($phpArray);
print_r($phpArray);
Salin selepas log masuk

Hasil output ialah:

Array
(
    [name] => John
    [age] => 30
    [city] => New York
    [job] => Array
        (
            [title] => Software Engineer
            [company] => Google
        )

    [languages] => Array
        (
            [0] => PHP
            [1] => JavaScript
            [2] => Python
        )

)
Salin selepas log masuk

Dalam contoh di atas, fungsi convertJson() ditakrifkan untuk menukar tatasusunan JSON lain yang bersarang dalam JSON tatasusunan atau Tukar objek JSON kepada tatasusunan PHP. Gunakan gelung foreach untuk mengulangi setiap elemen dalam tatasusunan JSON Jika elemen itu ialah tatasusunan atau objek, panggil fungsi convertJson() secara rekursif untuk menukarnya kepada tatasusunan PHP dan simpan hasilnya dalam tatasusunan $result elemen terus ke dalam tatasusunan $result. Akhirnya mengembalikan tatasusunan $result.

Ringkasan:

Artikel ini memperkenalkan cara menukar tatasusunan JSON kepada format PHP. Gunakan fungsi json_decode() untuk menukar rentetan JSON kepada tatasusunan atau objek PHP. Jika terdapat tatasusunan JSON atau objek JSON lain yang bersarang dalam tatasusunan JSON, anda boleh menggunakan rekursi untuk menukarnya menjadi tatasusunan PHP. Dalam pembangunan sebenar, dengan menggunakan pengetahuan di atas secara fleksibel mengikut situasi sebenar, data JSON boleh dihuraikan dan diproses dengan lebih cepat dan mudah.

Atas ialah kandungan terperinci Bagaimana untuk menukar tatasusunan json kepada php. 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