Emoji iPhone dalam MySQL: Masalah Pengekodan
Cabaran:
Pembangun menghadapi isu emotikon yang dimasukkan dari iPhone ke dalam jadual MySQL menjadi nilai kosong. Teks berjaya dimasukkan, tetapi emotikon dipotong secara misteri.
Penyelesaian:
Masalahnya terletak pada pengekodan aksara yang digunakan dalam medan MySQL. Emoji iOS selalunya berada dalam titik kod jadual Unikod di luar Satah Berbilang Bahasa Asas (BMP). Versi MySQL sebelum 5.5 hanya menyokong aksara BMP dalam pengekodan UTF-8.
Untuk menyelesaikan masalah ini, tukar kepada MySQL 5.5 dan gunakan set aksara utf8mb4, utf16 atau utf32 untuk medan yang terjejas. Pastikan pengekodan sambungan yang digunakan untuk berkomunikasi antara PHP dan MySQL sepadan dengan set aksara ini.
Alternatif untuk MySQL <5.5:
Jika MySQL <5.5 digunakan, pertimbangkan untuk menggunakan jenis data BLOB sebaliknya. Walaupun ini membenarkan storan bait mentah tanpa penghuraian aksara, ia menjejaskan keupayaan untuk mencari atau mengindeks teks dengan cekap.
Atas ialah kandungan terperinci Mengapa Emoji iPhone Hilang dalam Pangkalan Data MySQL Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!