Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar json ke array dalam php

Bagaimana untuk menukar json ke array dalam php

PHPz
PHPzasal
2023-04-26 14:18:51506semak imbas

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.

  1. Gunakan php fungsi terbina dalam json_decode() untuk menukar

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
)
  1. Gunakan perpustakaan pihak ketiga untuk penukaran

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!

Kenyataan:
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