Semasa proses pengaturcaraan PHP, selalunya perlu untuk mendapatkan data format json melalui getJSON atau kaedah lain Pada masa ini, ia perlu ditukar kepada tatasusunan untuk pemprosesan seterusnya. Artikel ini akan memperkenalkan cara menukar data format json kepada tatasusunan dalam php.
php menyediakan kaedah yang sangat mudah untuk terus menukar json kepada tatasusunan menggunakan fungsi terbina dalam json_decode( ). Kaedah penggunaan adalah seperti berikut:
$json_str = '{"name":"Tom","age":"18","gender":"male"}'; $arr = json_decode($json_str, true);
Antaranya, parameter pertama fungsi json_decode ialah rentetan json yang perlu ditukar, dan parameter kedua ialah nilai Boolean pilihan, menunjukkan sama ada untuk mengembalikan ia dalam bentuk tatasusunan. Jika anda tidak menetapkan nilai parameter ini, hasilnya akan dikembalikan dalam bentuk objek secara lalai.
Andaikan hasil penukaran rentetan json di atas adalah seperti berikut:
Array ( [name] => Tom [age] => 18 [gender] => male )
Jika anda perlu kemas kini data format json Untuk operasi yang kompleks, adalah disyorkan untuk menggunakan perpustakaan pihak ketiga untuk pemprosesan. Pada masa ini, terdapat dua perpustakaan sumber terbuka yang terkenal dalam PHP yang boleh kita gunakan, iaitu jsonkit dan jsonpath.
2.1. Jsonkit
Jsonkit ialah alat pemprosesan json yang dibangunkan oleh qqxhb. Ia menyediakan pelbagai fungsi untuk menyokong penghuraian, enkapsulasi, pemformatan dan operasi lain data json. Antaranya, fungsi json_decode() boleh menukar rentetan json kepada tatasusunan, dan fungsi json_encode() boleh menukar tatasusunan kepada rentetan format json.
Penggunaan:
$json_str = '{"name":"Tom","age":"18","gender":"male"}'; $arr = jsonkit_decode($json_str);
Antaranya, parameter pertama fungsi jsonkit_decode() ialah rentetan json yang perlu ditukar, dan nilai pulangan adalah dalam bentuk tatasusunan .
2.2. Jsonpath
Jsonpath ialah perpustakaan pemprosesan json yang lebih berkuasa yang boleh menyokong pertanyaan, penukaran dan operasi lain pada data json. Penggunaan:
$json_str = '{"name":"Tom","age":"18","gender":"male"}'; $jp = new JsonPath($json_str); $arr = $jp->json_decode();
Antaranya, kelas JsonPath dibangunkan oleh BrainMaestro Kita perlu terlebih dahulu menghantar data json yang perlu diproses ke dalam kelas ini, dan kemudian kita boleh memanggil fungsi json_decode() ke. menukarnya kepada tatasusunan.
Ringkasan:
Di atas ialah cara PHP menggunakan fungsi terbina dalam dan perpustakaan pihak ketiga untuk menukar json kepada tatasusunan. Jika anda hanya memerlukan operasi penukaran yang mudah, adalah disyorkan untuk menggunakan fungsi terbina dalam json_decode Jika lebih banyak operasi diperlukan, anda boleh memilih untuk menggunakan perpustakaan pihak ketiga untuk mengendalikannya. Pada masa yang sama, anda perlu memberi perhatian kepada ketepatan format rentetan json, jika tidak penukaran mungkin gagal.
Atas ialah kandungan terperinci Bagaimana untuk menukar json ke array dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!