Dengan perkembangan teknologi Internet, kami selalunya perlu memproses data JSON dalam PHP. Biasanya, kami menukar data JSON kepada tatasusunan PHP untuk manipulasi dan pemprosesan yang mudah. Artikel ini akan memperkenalkan fungsi json_decode() dan beberapa petua serta isu dalam menggunakan fungsi json_decode() dan memberikan beberapa contoh penggunaan.
1. Fungsi json_decode()
fungsi json_decode() ialah kaedah yang digunakan dalam PHP untuk menukar rentetan format JSON kepada objek atau tatasusunan PHP. Sintaks khusus adalah seperti berikut:
mixed json_decode(string $json, bool $assoc = false, int $depth = 512, int $options = 0);
Penerangan fungsi:
$json
: diperlukan. Rentetan format JSON untuk ditukar. $asso
c: Pilihan. Lalai ialah false
, yang bermaksud objek dikembalikan; jika ditetapkan kepada true
, tatasusunan dikembalikan. $depth
: Pilihan. Menentukan kedalaman rekursi, kedalaman maksimum ialah 512. $options
: Pilihan. Untuk menetapkan pilihan apabila menyahkod JSON, lihat [json_decode() perihalan fungsi](https://www.php.net/manual/en/function.json-decode.php) untuk mendapatkan butiran. 2. Tukar JSON kepada tatasusunan PHP
Kami menukar JSON kepada tatasusunan PHP Apabila menggunakan fungsi json_decode()
, kami hanya perlu menetapkan parameter $assoc
kepada iaitu Can. Berikut ialah contoh menukar data JSON kepada tatasusunan PHP: true
$json_str = '{"name": "Amy", "age": 20, "job": "Programmer"}'; $arr = json_decode($json_str, true); print_r($arr); // 输出 ["name"=>"Amy", "age"=>20, "job"=>"Programmer"]
$json_str = '{"name": "Tom", "age": 25, "job": "Designer"}'; $obj = json_decode($json_str); echo $obj->name; // 输出 Tom echo $obj->age; // 输出 25 echo $obj->job; // 输出 Designer
mengembalikan json_decode()
. Kita boleh menggunakan fungsi json_decode()
untuk menentukan sama ada penukaran berjaya Contoh khusus adalah seperti berikut: null
json_last_error()
$json_str = '{name: Amy}'; $obj = json_decode($json_str); if (json_last_error() == JSON_ERROR_NONE) { echo '转换成功'; } else { echo '转换失败'; // 输出 转换失败 }
kepada json_decode()
untuk menunjukkan bahawa Unicode tidak akan ditranskodkan. Contoh kod khusus adalah seperti berikut: $options
JSON_UNESCAPED_UNICODE
$json_str = '{"name": "\u5f20\u4e09"}'; $arr = json_decode($json_str, true, 512, JSON_UNESCAPED_UNICODE); echo $arr['name']; // 输出 张三
Atas ialah kandungan terperinci Bagaimana untuk menukar objek json php kepada array. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!