Bagaimana untuk menukar objek tatasusunan php dan tatasusunan json antara satu sama lain

PHPz
Lepaskan: 2023-04-24 16:59:16
asal
721 orang telah melayarinya

Semasa pembangunan PHP, kita biasanya perlu menukar tatasusunan kepada JSON untuk paparan di bahagian hadapan atau untuk memindahkan data antara sistem yang berbeza. Pada masa yang sama, kadangkala kita juga perlu menukar tatasusunan PHP kepada tatasusunan objek atau tatasusunan objek kepada tatasusunan JSON. Artikel ini akan menerangkan cara untuk melengkapkan operasi penukaran ini dalam PHP.

1. Tatasusunan PHP kepada JSON

Dalam PHP, kita boleh menggunakan fungsi json_encode() untuk menukar tatasusunan kepada JSON. Fungsi ini menerima tatasusunan sebagai hujah dan menukarnya menjadi rentetan berformat JSON. Berikut ialah contoh kod:

$fruits = array('apple', 'banana', 'cherry');
echo json_encode($fruits);
Salin selepas log masuk

Selepas kod dilaksanakan, keputusan berikut akan dikeluarkan:

["apple","banana","cherry"]
Salin selepas log masuk

2 tatasusunan PHP ke tatasusunan objek

Kadangkala, Kita perlu menukar tatasusunan PHP kepada tatasusunan objek untuk memudahkan manipulasi dan pemprosesan dalam atur cara. Untuk melengkapkan operasi penukaran ini, kita perlu terlebih dahulu menentukan objek kosong dan kemudian menambah sifat dan nilai padanya. Berikut ialah contoh kod:

$person = array(
   'name' => '张三',
   'age' => 26,
   'country' => '中国'
);

$objPerson = new stdClass();

foreach ($person as $key => $value) {
   $objPerson->$key = $value;
}

echo '<pre class="brush:php;toolbar:false">';
print_r($objPerson);
echo '
';
Salin selepas log masuk

Selepas kod dilaksanakan, keputusan berikut akan dikeluarkan:

stdClass Object
(
   [name] => 张三
   [age] => 26
   [country] => 中国
)
Salin selepas log masuk

3. Tukar tatasusunan objek kepada tatasusunan JSON

Dalam beberapa kes Dalam kes ini, kita perlu menukar tatasusunan objek kepada tatasusunan JSON untuk memaparkan atau memindahkan data pada bahagian hadapan. Untuk melengkapkan operasi penukaran ini, kita boleh menggunakan fungsi json_encode() dan teknik pemutus jenis. Berikut ialah contoh kod:

$users = array(
   array('name' => '张三', 'age' => 26, 'country' => '中国'),
   array('name' => '李四', 'age' => 28, 'country' => '美国'),
   array('name' => '王五', 'age' => 30, 'country' => '英国')
);

$objUsers = array();

foreach ($users as $user) {
   $objUser = new stdClass();
   foreach ($user as $key => $value) {
      $objUser->$key = $value;
   }
   array_push($objUsers, $objUser);
}

echo json_encode((array)$objUsers);
Salin selepas log masuk

Selepas kod dilaksanakan, keputusan berikut akan dikeluarkan:

[{"name":"张三","age":26,"country":"中国"},{"name":"李四","age":28,"country":"美国"},{"name":"王五","age":30,"country":"英国"}]
Salin selepas log masuk

4. Tukar tatasusunan JSON kepada tatasusunan objek

Kadangkala, Kita perlu menukar tatasusunan JSON kepada tatasusunan objek untuk memudahkan manipulasi dan pemprosesan dalam atur cara. Untuk melengkapkan operasi penukaran ini, kita perlu menggunakan fungsi json_decode() dan teknik pemutus jenis. Berikut ialah contoh kod:

$jsonUsers = '[{"name":"张三","age":26,"country":"中国"},{"name":"李四","age":28,"country":"美国"},{"name":"王五","age":30,"country":"英国"}]';

$objUsers = json_decode($jsonUsers);

$arrUsers = array();

foreach ($objUsers as $user) {
   $arrUser = array();
   foreach ($user as $key => $value) {
      $arrUser[$key] = $value;
   }
   array_push($arrUsers, $arrUser);
}

echo '
';
print_r($arrUsers);
echo '
';
Salin selepas log masuk

Selepas kod dilaksanakan, keputusan berikut akan dikeluarkan:

Array
(
   [0] => Array
      (
         [name] => 张三
         [age] => 26
         [country] => 中国
      )

   [1] => Array
      (
         [name] => 李四
         [age] => 28
         [country] => 美国
      )

   [2] => Array
      (
         [name] => 王五
         [age] => 30
         [country] => 英国
      )

)
Salin selepas log masuk

Di atas ialah tatasusunan PHP ke JSON, tatasusunan PHP ke objek tatasusunan, tatasusunan objek ke Kaedah operasi tatasusunan JSON dan tatasusunan JSON kepada tatasusunan objek, saya harap ia akan membantu pembangun PHP.

Atas ialah kandungan terperinci Bagaimana untuk menukar objek tatasusunan php dan tatasusunan json antara satu sama lain. 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