Rumah > pembangunan bahagian belakang > masalah PHP > Tukar rentetan json kepada php array json

Tukar rentetan json kepada php array json

WBOY
Lepaskan: 2023-05-19 21:01:06
asal
1478 orang telah melayarinya

Dalam pembangunan PHP, kita selalunya perlu memproses rentetan JSON, dan kadangkala kita perlu menukar rentetan JSON kepada tatasusunan JSON. Hari ini kita akan belajar cara menukar rentetan JSON kepada tatasusunan JSON dalam PHP.

  1. Gunakan fungsi json_decode()

PHP menyediakan fungsi yang sangat mudah - json_decode(), yang digunakan untuk menukar rentetan JSON kepada objek atau tatasusunan PHP.

Sintaks:

mixed json_decode ( string $json [, bool $assoc = FALSE [, int $depth = 512 [, int $options = 0 ]]] )
Salin selepas log masuk

Parameter:

  • json: rentetan JSON yang perlu dinyahkodkan.
  • assoc: Apabila parameter ini TRUE, tatasusunan akan dikembalikan dan bukannya objek.
  • kedalaman: Tetapkan kedalaman maksimum. Kedalaman lalai yang dibenarkan ialah 512, jika nilai ini melebihi, NULL akan dikembalikan.
  • pilihan: Topeng binari, menjejaskan tingkah laku penyahkodan. Pilihan yang biasa digunakan termasuk JSON_HEX_QUOT, JSON_HEX_TAG, JSON_HEX_AMP, JSON_HEX_APOS, JSON_NUMERIC_CHECK, JSON_PRETTY_PRINT, JSON_UNESCAPED_SLASHES, JSON_UNESCAPED_UNICODE, dsb. Untuk butiran, sila rujuk dokumentasi rasmi PHP.

Contoh:

$json_string = '{"name": "Tom","age": 18,"gender": "male"}';
$json_array = json_decode($json_string, true);
print_r($json_array);
Salin selepas log masuk

Output:

Array
(
    [name] => Tom
    [age] => 18
    [gender] => male
)
Salin selepas log masuk

Dalam contoh di atas, $json_array ialah tatasusunan JSON.

  1. Gunakan json_decode() untuk menghuraikan tatasusunan dua dimensi

Jika rentetan JSON mengandungi tatasusunan dua dimensi, kita boleh menetapkan parameter assoc kepada false dan kemudian lulus fungsi json_decode( ) menghuraikan untuk mendapatkan objek jenis stdClass, dan kemudian anda boleh menggunakan sifat objek untuk mendapatkan nilai.

Contoh:

$json_string = '[{"name": "Tom","age": 18,"gender": "male"},{"name": "Alice","age": 20,"gender": "female"}]';
$json_array = json_decode($json_string, false);
echo $json_array[0]->name;
Salin selepas log masuk

Output:

Tom
Salin selepas log masuk

Dalam contoh di atas, $json_array[0]->name ialah atribut nama bagi elemen pertama dalam tatasusunan JSON nilai.

  1. Tukar rentetan JSON kepada objek PHP

Jika kita ingin menukar rentetan JSON kepada objek PHP dan bukannya tatasusunan, kita boleh menetapkan parameter assoc kepada false , atau jangan lulus parameter ini.

Contoh:

$json_string = '{"name": "Tom","age": 18,"gender": "male"}';
$json_object = json_decode($json_string);
echo $json_object->age;
Salin selepas log masuk

Output:

18
Salin selepas log masuk

Dalam contoh di atas, $json_object ialah objek PHP dan kita boleh menggunakan sifat objek untuk mendapatkan nilai.

Ringkasan

Artikel ini memperkenalkan dua kaedah untuk menukar rentetan JSON kepada tatasusunan JSON dalam PHP: menggunakan fungsi json_decode() untuk menghuraikan tatasusunan pasangan nilai kunci dan tatasusunan berbilang dimensi dan menukar JSON aksara Tukar rentetan kepada objek PHP.

Tidak kira kaedah yang digunakan, anda boleh menukar rentetan JSON kepada JSONArray, dan kemudian menggunakan PHP untuk mendapatkan data JSON, yang akan membantu kami memproses data dengan lebih baik dan membangunkan aplikasi yang lebih baik.

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