Rumah > pangkalan data > tutorial mysql > Bagaimana untuk Mengekodkan Aksara UTF-8 dengan betul dengan json_encode() dalam PHP?

Bagaimana untuk Mengekodkan Aksara UTF-8 dengan betul dengan json_encode() dalam PHP?

Mary-Kate Olsen
Lepaskan: 2024-10-30 16:28:03
asal
681 orang telah melayarinya

How to Encode UTF-8 Characters Correctly with json_encode() in PHP?

Isu Pengekodan Aksara UTF-8 dengan json_encode()

Pernyataan Masalah

Pengekodan aksara UTF-8 bermasalah dengan fungsi json_encode() . Selepas fungsi ini mengekod nilai daripada LATIN1 kepada UTF-8, output menjadi batal.

Soalan

Bagaimanakah json_encode() boleh digunakan untuk mengekod nilai UTF-8 dengan betul, tanpa menggunakan ketiga- perpustakaan parti seperti Zend Framework?

Jawapan

Untuk menyelesaikan isu ini, ikut langkah berikut:

  1. Buat Susunan Kosong: Mulakan kosongkan tatasusunan $rows untuk menyimpan set hasil yang dikodkan.
  2. Enkodkan Nilai Baris: Lelaran melalui set hasil pangkalan data, menukar nilai setiap baris kepada UTF-8 menggunakan utf8_encode. Simpan baris yang dikodkan dalam tatasusunan $rows.
  3. Encode dan Echo JSON: Akhir sekali, hantar tatasusunan $rows ke json_encode() dan bergema hasilnya untuk menghantar UTF-8 yang dikodkan dengan betul nilai pada penyemak imbas web.

Berikut ialah contoh coretan kod:

<code class="php">// Create an empty array for the encoded resultset
$rows = array();

// Loop over the db resultset and put encoded values into $rows
while($row = mysql_fetch_assoc($result)) {
  $rows[] = array_map('utf8_encode', $row);
}

// Output $rows
echo json_encode($rows);</code>
Salin selepas log masuk

Atas ialah kandungan terperinci Bagaimana untuk Mengekodkan Aksara UTF-8 dengan betul dengan json_encode() dalam PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan