Rumah > pembangunan bahagian belakang > masalah PHP > Bagaimana untuk menghuraikan json ke dalam tatasusunan dalam php

Bagaimana untuk menghuraikan json ke dalam tatasusunan dalam php

WBOY
Lepaskan: 2023-05-07 18:06:15
asal
877 orang telah melayarinya

Dengan pembangunan aplikasi web, pemprosesan data JSON (JavaScript Object Notation) telah menjadi tugas biasa PHP ialah bahasa yang popular, dan banyak pembangun web memilih untuk menggunakan PHP untuk memproses data JSON. Dalam artikel ini, kami akan membincangkan cara menghuraikan JSON ke dalam tatasusunan dalam PHP.

  1. fungsi json_decode()

Fungsi json_decode() terbina dalam PHP boleh menghuraikan rentetan JSON ke dalam objek atau tatasusunan PHP. Apabila menghuraikan JSON sebagai tatasusunan, anda boleh menghuraikan JSON sebagai tatasusunan bersekutu dan bukannya objek PHP dengan menetapkan parameter kedua kepada benar dalam fungsi json_decode(). Contohnya:

$json = '{"name": "John", "age": 30, "city": "New York"}';
$arr = json_decode($json, true);
print_r($arr);
Salin selepas log masuk

Kod di atas akan mengeluarkan hasil berikut:

Array
(
    [name] => John
    [age] => 30
    [city] => New York
)
Salin selepas log masuk
  1. JSON pemprosesan tatasusunan bersarang

Jika data JSON mengandungi tatasusunan bersarang , Anda boleh menggunakan gelung foreach untuk mengulang tatasusunan. Sebagai contoh, berikut ialah data JSON untuk tatasusunan bersarang:

{
    "name": "John",
    "age": 30,
    "city": "New York",
    "contacts": [
        {
            "type": "phone",
            "number": "555-5555"
        },
        {
            "type": "email",
            "address": "john@example.com"
        }
    ]
}
Salin selepas log masuk

Anda boleh menggunakan fungsi json_decode() untuk menghuraikannya ke dalam tatasusunan PHP:

$json = '{
    "name": "John",
    "age": 30,
    "city": "New York",
    "contacts": [
        {
            "type": "phone",
            "number": "555-5555"
        },
        {
            "type": "email",
            "address": "john@example.com"
        }
    ]
}';
$arr = json_decode($json, true);
Salin selepas log masuk

Kod di atas akan mengembalikan yang berikut tatasusunan bersekutu:

Array
(
    [name] => John
    [age] => 30
    [city] => New York
    [contacts] => Array
        (
            [0] => Array
                (
                    [type] => phone
                    [number] => 555-5555
                )
    
            [1] => Array
                (
                    [type] => email
                    [address] => john@example.com
                )
    
        )
    
)
Salin selepas log masuk

Anda boleh menggunakan gelung foreach untuk mengulang tatasusunan bersarang:

foreach ($arr['contacts'] as $contact) {
    echo $contact['type'] . ': ' . $contact['number'] . '<br>';
}
Salin selepas log masuk

Output:

phone: 555-5555
email: john@example.com
Salin selepas log masuk
  1. Pengendalian ralat

Apabila menghuraikan data JSON , ralat mungkin berlaku. Sebagai contoh, apabila rentetan JSON rosak, ia tidak akan dihuraikan dengan betul ke dalam tatasusunan PHP. Dalam kes ini, fungsi json_decode() akan mengembalikan null. Oleh itu, kita harus menyemak sama ada hasil yang dihuraikan adalah batal dan mengendalikan ralat dengan sewajarnya.

Sebagai contoh, kod berikut akan mengembalikan null kerana rentetan JSON tidak dalam format yang betul:

$json = '{"name": "John, "age": 30, "city": "New York"}';
$arr = json_decode($json, true);
Salin selepas log masuk

Jadi, untuk mengelakkan masalah, kita boleh menyemak sama ada hasil yang dihuraikan adalah null dan output ralat sewajarnya Mesej:

$json = '{"name": "John, "age": 30, "city": "New York"}';
$arr = json_decode($json, true);
if ($arr === null) {
    echo 'JSON解析失败';
} else {
    print_r($arr);
}
Salin selepas log masuk

Output:

JSON解析失败
Salin selepas log masuk

Di atas adalah kaedah dan teknik asas untuk menghuraikan JSON ke dalam tatasusunan dalam PHP. Menggunakan teknik ini, anda boleh memproses data JSON dengan mudah. Walau bagaimanapun, dalam aplikasi sebenar, pengendalian ralat yang sepadan dan pengesahan data juga perlu dijalankan mengikut keadaan tertentu.

Atas ialah kandungan terperinci Bagaimana untuk menghuraikan json ke dalam tatasusunan dalam 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