Bagaimana untuk menukar tatasusunan menjadi json dalam php

PHPz
Lepaskan: 2023-04-26 10:10:59
asal
499 orang telah melayarinya

Dalam pembangunan web, selalunya perlu untuk menukar tatasusunan kepada data format JSON. PHP, sebagai bahasa skrip bahagian pelayan yang digunakan secara meluas, menyediakan banyak kaedah untuk menukar tatasusunan kepada JSON.

  1. Gunakan fungsi json_encode()

fungsi json_encode() ialah fungsi paling asas dalam PHP untuk menukar tatasusunan kepada format JSON. Ia menerima tatasusunan sebagai parameter dan mengembalikan rentetan berformat JSON.

Kod sampel:

<?php
$array = array(&#39;name&#39; => 'Tom', 'age' => 20, 'gender' => 'Male');
$json = json_encode($array);
echo $json;
?>
Salin selepas log masuk

Hasil keluaran:

{"name":"Tom","age":20,"gender":"Male"}
Salin selepas log masuk
  1. Memproses aksara Cina

Jika tatasusunan mengandungi bahasa Cina aksara Aksara mungkin kelihatan bercelaru apabila menggunakan fungsi json_encode(). Dalam kes ini, anda boleh menggunakan pilihan JSON_UNESCAPED_UNICODE untuk mengabaikan aksara Unicode yang melarikan diri.

Kod contoh:

<?php
$array = array(&#39;name&#39; => '张三', 'age' => 20, 'gender' => '男');
$json = json_encode($array, JSON_UNESCAPED_UNICODE);
echo $json;
?>
Salin selepas log masuk

Hasil keluaran:

{"name":"张三","age":20,"gender":"男"}
Salin selepas log masuk
  1. Mengendalikan tatasusunan bersarang

Jika tatasusunan bersarang Jika tatasusunan atau objek lain digunakan, fungsi json_encode() mungkin tidak ditukar dengan betul. Pada masa ini, anda perlu menggunakan fungsi rekursif untuk memproses setiap peringkat tatasusunan.

Kod sampel:

<?php
$array = array(
  &#39;name&#39; => 'Tom',
  'age' => 20,
  'gender' => 'Male',
  'contacts' => array(
    'email' => 'tom@example.com',
    'phone' => '123456789'
  )
);
$json = json_encode_recursive($array);
echo $json;

function json_encode_recursive($array) {
  array_walk_recursive($array, function(&$value, &$key) {
    if (is_string($value)) {
      $value = urlencode($value);
    }
  });
  return urldecode(json_encode($array));
}
?>
Salin selepas log masuk

Hasil output:

{"name":"Tom","age":20,"gender":"Male","contacts":{"email":"tom%40example.com","phone":"123456789"}}
Salin selepas log masuk

Di atas ialah beberapa kaedah menukar tatasusunan kepada JSON menggunakan PHP. Perlu diingatkan bahawa data JSON mesti mematuhi spesifikasi format tertentu, jika tidak, data itu mungkin tidak dihuraikan atau digunakan. Dalam pembangunan sebenar, kita perlu memahami sintaks asas dan peraturan JSON, dan memilih kaedah pemprosesan yang sesuai mengikut keperluan tertentu.

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