Rumah >pembangunan bahagian belakang >tutorial php >Bagaimana untuk Memperbaiki Pengekodan UTF-8 Patah dalam MySQL dan PHP?
Membetulkan Pengekodan UTF-8 yang Rosak
Apabila berurusan dengan pengekodan UTF-8, adalah perkara biasa untuk menemui aksara yang rosak seperti î kerana salah pengendalian. Isu ini boleh timbul daripada konfigurasi pangkalan data, tetapan PHP atau pengekodan editor teks.
Set Aksara MySQL dan Pengepala PHP
Pastikan pangkalan data MySQL anda menggunakan UTF -8 pengumpulan seperti utf8_general_ci. Selain itu, sahkan bahawa kod PHP anda termasuk pengepala UTF-8 yang betul, seperti:
<?php header("Content-Type: text/html; charset=utf-8"); ?>
Menyemak Notepad dan phpMyAdmin
Sahkan bahawa Notepad dikonfigurasikan untuk digunakan UTF-8 tanpa BOM. Dalam phpMyAdmin, pastikan pengekodan aksara ditetapkan kepada UTF-8 untuk paparan data dan eksport SQL.
Mengenal pasti Aksara Beraksen yang Patah
Walaupun tidak semua aksara beraksen mungkin turutan pecah biasa yang terjejas termasuk î, àdan ü. Aksara ini masing-masing mewakili versi aksen "e," "i" dan "u".
Penyelesaian: Pembetulan Pengekodan Berganda
Jika anda mengesyaki pengekodan dua kali aksara UTF-8, pertimbangkan untuk menggunakan prosedur berikut:
mysqldump -h DB_HOST -u DB_USER -p DB_PASSWORD --opt --quote-names \ --skip-set-charset --default-character-set=latin1 DB_NAME > DB_NAME-dump.sql
mysql -h DB_HOST -u DB_USER -p DB_PASSWORD \ --default-character-set=utf8 DB_NAME < DB_NAME-dump.sql
Proses ini secara paksa menukar aksara dwikod kepada sah UTF-8.
Sumber:
[Membetulkan Data UTF-8 Berekod Berganda dalam MySQL](http://blog.hno3.org/2010/04/22/fixing -double-encoded-utf-8-data-in-mysql/)
Atas ialah kandungan terperinci Bagaimana untuk Memperbaiki Pengekodan UTF-8 Patah dalam MySQL dan PHP?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!