Rumah > Artikel > pembangunan bahagian belakang > Bagaimana untuk Menukar Aksara Latin1 dalam Jadual UTF8 kepada 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!