Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk menukar php json menjadi objek array

Bagaimana untuk menukar php json menjadi objek array

PHPz
PHPzasal
2023-04-18 09:47:31498semak imbas

Dalam pembangunan web, selalunya perlu menukar rentetan berformat JSON kepada objek tatasusunan untuk memudahkan pemprosesan data. Dalam PHP, kita boleh menyelesaikan tugas ini melalui fungsi terbina dalam. Artikel ini akan memperkenalkan cara menukar JSON kepada objek tatasusunan dalam PHP.

Pertama sekali, kita perlu memahami struktur asas dan tujuan format JSON. JSON (JavaScript Object Notation) ialah format pertukaran data ringan yang dinyatakan dalam format teks yang boleh digunakan untuk pertukaran data antara pelbagai aplikasi. Struktur asasnya ialah pasangan nilai kunci, dipisahkan dengan koma, menggunakan kurungan kerinting untuk mewakili objek dan menggunakan kurungan segi empat sama untuk mewakili tatasusunan.

Sampel rentetan berformat JSON adalah seperti berikut:

{
   "name": "Lucy",
   "age": 25,
   "hobbies": ["reading", "swimming", "traveling"],
   "address": {
       "country": "China",
       "city": "Beijing",
       "postal_code": "100000"
   }
}

Dalam PHP, kita boleh menggunakan fungsi json_decode() untuk menukar rentetan JSON kepada objek tatasusunan. Parameter pertama fungsi ini ialah rentetan JSON yang akan ditukar, dan parameter kedua digunakan untuk menetapkan jenis data yang ditukar. Sebagai contoh, kita boleh menetapkan parameter kedua kepada benar untuk menukarnya kepada tatasusunan bersekutu, kita juga boleh menetapkannya kepada palsu untuk menukarnya kepada tatasusunan objek biasa. Kod sampel adalah seperti berikut:

$json_str = '{
   "name": "Lucy",
   "age": 25,
   "hobbies": ["reading", "swimming", "traveling"],
   "address": {
       "country": "China",
       "city": "Beijing",
       "postal_code": "100000"
   }
}';

$arr = json_decode($json_str, true);
var_dump($arr);

Hasil keluarannya ialah:

array(4) {
  ["name"]=>
  string(4) "Lucy"
  ["age"]=>
  int(25)
  ["hobbies"]=>
  array(3) {
    [0]=>
    string(7) "reading"
    [1]=>
    string(8) "swimming"
    [2]=>
    string(9) "traveling"
  }
  ["address"]=>
  array(3) {
    ["country"]=>
    string(5) "China"
    ["city"]=>
    string(7) "Beijing"
    ["postal_code"]=>
    string(6) "100000"
  }
}

Seperti yang anda lihat, kami menukar rentetan JSON kepada objek tatasusunan dengan menggunakan json_decode() fungsi. Antaranya, nama dan umur ialah pasangan nilai kunci biasa, dan hobi serta alamat masing-masing mewakili tatasusunan dan objek bersarang. Dalam tatasusunan yang ditukar, kita boleh mengakses nilai yang sepadan melalui nama kunci yang sepadan.

Selain itu, kami juga boleh menukar rentetan JSON kepada objek Kod sampel adalah seperti berikut:

$json_str = '{
   "name": "Lucy",
   "age": 25,
   "hobbies": ["reading", "swimming", "traveling"],
   "address": {
       "country": "China",
       "city": "Beijing",
       "postal_code": "100000"
   }
}';

$obj = json_decode($json_str);
var_dump($obj);

Hasil output ialah:

object(stdClass)#1 (4) {
  ["name"]=>
  string(4) "Lucy"
  ["age"]=>
  int(25)
  ["hobbies"]=>
  array(3) {
    [0]=>
    string(7) "reading"
    [1]=>
    string(8) "swimming"
    [2]=>
    string(9) "traveling"
  }
  ["address"]=>
  object(stdClass)#2 (3) {
    ["country"]=>
    string(5) "China"
    ["city"]=>
    string(7) "Beijing"
    ["postal_code"]=>
    string(6) "100000"
  }
}

Kita boleh. Lihat bahawa hasil yang ditukar ialah objek stdClass, yang merupakan objek PHP biasa. Kami juga boleh mengakses nilai yang sepadan melalui nama atribut yang sepadan.

Ringkasnya, dalam PHP, kita boleh memproses data dengan mudah dengan menggunakan fungsi json_decode() terbina dalam untuk menukar rentetan berformat JSON kepada objek tatasusunan atau objek PHP biasa. Dalam pembangunan Web sebenar, pemprosesan data dalam format JSON telah menjadi sangat biasa, jadi menguasai pengetahuan berkaitan penukaran JSON telah menjadi salah satu kemahiran yang diperlukan.

Atas ialah kandungan terperinci Bagaimana untuk menukar php json menjadi objek array. 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