Watak bercelaru ialah masalah yang sering dihadapi dalam pembangunan web, terutamanya apabila berurusan dengan aksara Cina. Dalam PHP, aksara bercelaru biasanya berkaitan dengan pengekodan aksara. Jika pengekodan aksara tidak digunakan dan ditetapkan dengan betul, ia akan membawa kepada aksara bercelaru.
Berikut ialah beberapa cara untuk menangani aksara yang bercelaru:
Dalam PHP, anda boleh menggunakan fungsi header
untuk menetapkan pengekodan aksara , seperti berikut:
header('Content-Type:text/html;charset=utf-8');
Pengekodan aksara ditetapkan kepada UTF-8 untuk memastikan teks pada halaman boleh dipaparkan dengan betul. Begitu juga, anda juga boleh menetapkan pengekodan aksara dalam teg kepala HTML:
<meta charset="utf-8">
Jika aksara yang bercelaru telah berlaku, anda boleh menggunakan Fungsi penukaran pengekodan Aksara PHP untuk diselesaikan. Fungsi penukaran pengekodan aksara yang biasa digunakan ialah iconv
dan mb_convert_encoding
. Contohnya, tukar rentetan berkod GBK kepada pengekodan UTF-8:
$str = iconv('GBK', 'UTF-8', $str); 或者 $str = mb_convert_encoding($str, 'UTF-8', 'GBK');
Jika anda menghadapi masalah semasa membaca pangkalan data dalam PHP Untuk aksara Cina yang kacau, anda boleh menyemak tetapan set aksara pangkalan data. Tetapkan set aksara pangkalan data kepada UTF-8 dan pastikan anda menggunakan set aksara yang sama semasa memasukkan dan membaca data.
ALTER DATABASE databasename DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;
Apabila memaparkan kandungan yang diserahkan pengguna pada halaman web, untuk mengelakkan serangan XSS, kami biasanya menapis HTML. Jika fungsi penapis digunakan secara tidak betul, ia juga akan membawa kepada aksara bercelaru. Adalah disyorkan untuk menggunakan fungsi htmlspecialchars
dan strip_tags
terbina dalam PHP untuk penapisan HTML.
Ringkasnya, menangani aksara bercelaru dalam PHP memerlukan penetapan pengekodan aksara dengan betul, menggunakan fungsi penukaran pengekodan aksara, menyemak tetapan set aksara pangkalan data dan menggunakan fungsi penapis HTML. Semasa proses pembangunan, anda perlu memberi perhatian kepada perpaduan dan ketekalan pengekodan aksara untuk mengelakkan aksara bercelaru dengan berkesan.
Atas ialah kandungan terperinci Apa yang perlu dilakukan jika php bercelaru. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!