Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Bagaimana untuk Menukar Aksara Latin1 dalam Jadual UTF8 kepada UTF8?

Bagaimana untuk Menukar Aksara Latin1 dalam Jadual UTF8 kepada UTF8?

DDD
DDDasal
2024-11-02 13:51:02693semak imbas

How to Convert Latin1 Characters in a UTF8 Table to UTF8?

Tukar aksara latin1 pada jadual UTF8 kepada UTF8

Anda perasan bahawa anda terlepas memasukkan mysql_set_charset('utf8') dalam skrip PHP anda , dan kini semua jadual berada dalam pengumpulan utf8_unicode_ci, menjadikan sisipan aksara dengan diakritik tidak berfungsi dengan betul.

Sebelum ini, setiap kali anda cuba memasukkan sesuatu dengan diakritik, data akan ditunjukkan secara salah disebabkan ketidakpadanan dalam set watak. Walau bagaimanapun, selepas membetulkan charset antara PHP dan MySQL, sisipan baharu kini disimpan dengan betul.

Langkah seterusnya ialah membetulkan semua baris lama yang masih bercelaru. Anda telah mencuba menggunakan mb_convert_encoding dan iconv, tetapi rentetan itu semakin terputus selepas aksara tertentu.

Untuk memulihkan data, anda boleh menggunakan fungsi MySQL seperti:

convert(cast(convert(name using latin1) as binary) using utf8)

Bergantung pada cara data telah diubah semasa penukaran pengekodan, anda mungkin perlu meninggalkan penukaran dalam. Fungsi ini akan menukar data daripada Latin-1 kepada binari dan kemudian kepada UTF-8, memastikan semua aksara dipaparkan dengan betul.

Atas ialah kandungan terperinci Bagaimana untuk Menukar Aksara Latin1 dalam Jadual UTF8 kepada UTF8?. 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