Rumah  >  Artikel  >  pangkalan data  >  Mengapa aksara Unicode dipaparkan sebagai tanda soal dalam PHP dan bagaimana untuk membetulkannya?

Mengapa aksara Unicode dipaparkan sebagai tanda soal dalam PHP dan bagaimana untuk membetulkannya?

Patricia Arquette
Patricia Arquetteasal
2024-10-28 18:00:05970semak imbas

Why do Unicode characters display as question marks in PHP and how to fix it?

Paparan Data Unikod dalam PHP

Apabila berurusan dengan data Unicode dalam PHP, adalah perkara biasa untuk menghadapi masalah dengan paparan yang tidak betul. Satu kes sedemikian ialah ketidakupayaan untuk memaparkan aksara Unicode dengan betul.

Isu:
Kod yang disediakan cuba memaparkan data Unicode daripada pangkalan data MySQL, tetapi ia menunjukkan aksara yang salah sebagai tanda soal .

Penyelesaian:
Untuk menyelesaikan masalah ini, anda perlu menetapkan pengekodan aksara untuk kedua-dua pelanggan dan keputusan dalam MySQL. Ini memastikan PHP boleh menyahkod dan memaparkan aksara Unicode dengan betul. Berikut ialah kod yang diubah suai:

<code class="php">mysql_query("set character_set_client='utf8'");
mysql_query("set character_set_results='utf8'");</code>

Ini menetapkan set aksara klien dan hasil kepada UTF-8, membenarkan PHP mentafsir dan memaparkan data Unicode dengan betul.

Isu Asal:
Kod asal tidak menyatakan pengekodan aksara, yang mengakibatkan paparan aksara Unikod yang salah. Dengan menetapkan pengekodan secara eksplisit, PHP boleh mengendalikan data dengan sewajarnya.

Pertimbangan Tambahan:
Bergantung pada konfigurasi pangkalan data anda, anda juga mungkin perlu menetapkan pengumpulan kepada utf8_general_ci untuk memastikan betul pengendalian data Unicode. Ini boleh dicapai dengan pertanyaan berikut:

<code class="php">mysql_query("set collation_connection='utf8_general_ci'");</code>

Pelarasan ini memastikan PHP boleh memaparkan data Unicode dengan tepat.

Atas ialah kandungan terperinci Mengapa aksara Unicode dipaparkan sebagai tanda soal dalam PHP dan bagaimana untuk membetulkannya?. 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