Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Tukar rentetan json kepada php array json

Tukar rentetan json kepada php array json

WBOY
WBOYasal
2023-05-19 21:01:061423semak imbas

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 ]]] )

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);

Output:

Array
(
    [name] => Tom
    [age] => 18
    [gender] => male
)

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;

Output:

Tom

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;

Output:

18

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!

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