Rumah > Artikel > pembangunan bahagian belakang > Tukar php kepada tatasusunan json
PHP ialah bahasa pengaturcaraan sebelah pelayan yang sangat popular yang digunakan secara meluas dalam pembangunan laman web. Dalam proses pembangunan sebenar, kita biasanya perlu menukar tatasusunan PHP kepada tatasusunan JSON untuk pemprosesan dan paparan di bahagian hadapan. Berikut akan memperkenalkan secara terperinci cara menukar tatasusunan PHP kepada tatasusunan JSON.
1. Apakah itu JSON?
JSON ialah singkatan daripada Notasi Objek JavaScript Ia adalah format pertukaran data yang ringan boleh diselenggara dan boleh distrim, jadi ia digunakan secara meluas dalam interaksi data bahagian hadapan dan penghantaran antara muka.
Peraturan sintaks JSON adalah sangat mudah Ia terdiri daripada pasangan nilai kunci: nama kunci mestilah rentetan dan nilainya boleh menjadi rentetan, nombor, benar, salah, nol, tatasusunan atau. objek. Umumnya dinyatakan sebagai {key1:value1, key2:value2, ...}, pasangan nilai kunci yang berbeza dipisahkan dengan koma, dengan nama kunci di sebelah kiri dan nilai di sebelah kanan.
Contoh:
{
"nama": "Tom",
"umur": 18,
"hobi": ["membaca", "muzik" ],
"info": {
"address": "Beijing", "telephone": "1234567890"
}
}
2. Cara menukar tatasusunan PHP kepada tatasusunan JSON
Tukar tatasusunan PHP kepada JSON Di sana. ialah dua kaedah untuk tatasusunan: json_encode() dan json_decode().
kaedah json_encode(): Tukar tatasusunan PHP kepada tatasusunan JSON
kaedah json_encode() boleh menukar tatasusunan PHP kepada tatasusunan JSON. Sintaks kaedah ini sangat mudah:
string json_encode ( $value campuran [, int $options = 0 [, int $depth = 512 ]] )
Penerangan parameter:
$value: diperlukan, perlu ditukar kepada tatasusunan PHP JSON.
$options: Pilihan, sebagai parameter kedua json_encode(), digunakan untuk mengawal beberapa pilihan proses penukaran.
$depth: Pilihan, sebagai parameter ketiga json_encode(), tetapkan kedalaman rekursi.
Mari kita lihat contoh:
$arr = array(
"name" => "Tom", "age" => 18, "hobby" => array("reading", "music"), "info" => array( "address" => "Beijing", "telephone" => "1234567890" )
);
echo json_encode($arr);
Hasil output ialah:
{"name":"Tom","age":18,"hobi":["reading","music"],"info":{"address": "Beijing","telephone":"1234567890"}}
Anda boleh melihat bahawa hasil output telah menukar tatasusunan PHP kepada rentetan dalam format JSON.
kaedah json_decode(): Tukar tatasusunan JSON kepada tatasusunan PHP
kaedah json_decode() boleh menukar tatasusunan JSON kepada tatasusunan PHP, yang memudahkan operasi kami yang seterusnya. Sintaks kaedah ini juga sangat mudah:
json_decode campuran ( string $json [, bool $assoc = false [, int $depth = 512 [, int $options = 0 ]]] )
Perihalan parameter:
$json: diperlukan, rentetan JSON yang perlu ditukar.
$assoc: Pilihan, sebagai parameter kedua json_decode(), jika benar, objek PHP dikembalikan, jika tidak tatasusunan bersekutu PHP dikembalikan.
$depth: Pilihan, sebagai parameter ketiga json_decode(), tetapkan kedalaman rekursi.
$options: Pilihan, sebagai parameter keempat json_decode(), digunakan untuk mengawal beberapa pilihan proses penukaran.
Mari kita lihat contoh:
$str = '{"name":"Tom","age":18,"hobi":["reading","music" ] ,"info":{"address":"Beijing","telefon":"1234567890"}}';
$arr = json_decode($str, true);
print_r ( $arr);
Hasil output ialah:
Array
(
[name] => Tom [age] => 18 [hobby] => Array ( [0] => reading [1] => music ) [info] => Array ( [address] => Beijing [telephone] => 1234567890 )
)
Anda boleh melihat bahawa hasil output telah berada dalam Format JSON Rentetan ditukar kepada tatasusunan PHP.
Ringkasan:
Di atas ialah cara menukar tatasusunan PHP kepada tatasusunan JSON Anda juga boleh menggunakan kaedah json_decode() yang sepadan untuk menukar tatasusunan JSON kepada tatasusunan PHP. Dalam pembangunan sebenar, kita perlu memilih kaedah penukaran yang sesuai mengikut keperluan khusus untuk mengendalikan data dengan lebih fleksibel.
Atas ialah kandungan terperinci Tukar php kepada tatasusunan json. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!