Tukar json kepada php array objek

WBOY
Lepaskan: 2023-05-19 13:50:37
asal
718 orang telah melayarinya

Dalam proses membangunkan aplikasi web, selalunya diperlukan untuk memproses rentetan sahaja. Penukaran data antara bahasa pengaturcaraan yang berbeza biasanya diperlukan. Dalam PHP kita perlu menukar rentetan JSON kepada pelbagai objek. Berikut ialah beberapa arahan tentang cara menukar JSON kepada tatasusunan objek PHP.

JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang mudah dibaca dan ditulis, serta mudah untuk dihuraikan dan dijana oleh mesin. JSON terdiri daripada jenis data asas, yang paling biasa termasuk: rentetan, nombor, tatasusunan, nilai Boolean, objek dan nilai nol. JSON telah menjadi format pemindahan data standard antara pelanggan dan pelayan.

PHP mempunyai fungsi pemprosesan JSON terbina dalam yang boleh menukar rentetan JSON kepada tatasusunan atau objek dengan mudah. Fungsi yang paling biasa digunakan dalam PHP ialah fungsi json_decode(). Fungsi ini menukar rentetan JSON kepada pembolehubah PHP (tatasusunan atau objek). Fungsi json_decode() mengambil dua parameter: rentetan JSON untuk ditukar dan jenis data yang dikembalikan (lalai ialah objek). Berikut ialah contoh mudah:

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

Output:

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

Secara lalai, fungsi json_decode() mengembalikan objek. Kita juga boleh menukarnya untuk mengembalikan tatasusunan:

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

Output:

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

Dalam contoh di atas, kami menggunakan parameter kedua untuk menentukan jenis pulangan sebagai tatasusunan. Fungsi ini mengikut beberapa peraturan yang lebih kompleks apabila menghuraikan rentetan JSON. Anda boleh menyemak dokumentasi rasmi untuk butiran lanjut.

Jika anda ingin memproses rentetan JSON yang mengandungi berbilang objek JSON, anda boleh menambah parameter tambahan JSON_BIGINT_AS_STRING apabila memanggil fungsi json_decode(). Ini akan memastikan bahawa pengendali tidak menukar nilai berangka yang besar dalam rentetan JSON kepada nombor titik terapung. Ini amat berguna apabila memproses peristiwa log yang mengandungi satu atau lebih CUIDS (ID Pelanggan), kerana ID ini perlu kekal unik.

Berikut ialah contoh:

$json_string = '[{"name":"John","age":30,"city":"New York"},{"name":"Mike","age":35,"city":"Chicago"}]';
$arr = json_decode($json_string, true, 512, JSON_BIGINT_AS_STRING);
print_r($arr);
Salin selepas log masuk

Output:

Array 
( 
    [0] => Array 
        ( 
            [name] => John 
            [age] => 30 
            [city] => New York 
        ) 

    [1] => Array 
        ( 
            [name] => Mike 
            [age] => 35 
            [city] => Chicago 
        ) 

)
Salin selepas log masuk

Dalam contoh di atas, kami melepasi parameter JSON_BIGINT_AS_STRING kerana kami tahu itu mungkin dalam rentetan JSON kami. integer besar. Adalah penting untuk mengendalikan situasi ini dan memastikan bahawa nombor ini tidak ditukar kepada nombor titik terapung.

JSON ialah format yang sangat biasa dalam pemindahan data bahagian hadapan dan belakang, jadi adalah penting untuk mengetahui cara mengendalikan JSON. Dalam PHP, kita boleh menukar rentetan JSON dengan mudah kepada pelbagai objek menggunakan fungsi json_decode() terbina dalam. Jika anda boleh menggunakan fungsi ini dan parameter yang berkaitan dengan sewajarnya, anda boleh mengendalikan data JSON dalam PHP dengan mudah dan memproses data dengan cepat, cekap dan selamat.

Atas ialah kandungan terperinci Tukar json kepada php array objek. 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