Apabila membangunkan tapak web, penukaran pengekodan aksara sering digunakan. Satu penukaran biasa ialah menukar pengekodan UTF-8 kepada pengekodan GBK. Artikel ini akan memperkenalkan cara menggunakan PHP untuk menukar antara pengekodan UTF-8 dan GBK.
1. Perbezaan antara pengekodan UTF-8 dan pengekodan GBK
Pengekodan UTF-8 dan pengekodan GBK ialah kedua-dua piawaian pengekodan aksara biasa, tetapi terdapat beberapa perbezaan antara keduanya.
Pengekodan UTF-8 ialah kaedah perwakilan set aksara Unicode. Ia menggunakan satu hingga empat bait untuk mewakili aksara dan boleh mewakili aksara dari hampir semua negara, jadi ia sangat mudah digunakan dalam persekitaran merentas bahasa.
Pengekodan GBK ialah standard pengekodan aksara yang digunakan dalam konteks Cina. Ia menggunakan dua bait untuk mewakili aksara dan boleh mewakili Cina Tradisional, Cina Mudah dan beberapa aksara Cina lain, tetapi ia tidak boleh mewakili aksara bukan Cina.
2. Gunakan PHP untuk menukar UTF-8 kepada GBK
iconv ialah set aksara penukaran yang dibina ke dalam PHP fungsi. Anda boleh menggunakan iconv untuk menukar rentetan UTF-8 kepada rentetan GBK.
$gbkStr = iconv('UTF-8', 'GBK', $utf8Str);
Antaranya, $utf8Str ialah rentetan UTF-8 yang perlu ditukar dan $gbkStr ialah rentetan GBK yang ditukar.
Sebagai contoh, untuk menukar rentetan berkod UTF-8 kepada rentetan berkod GBK:
$utf8Str = '这是一段UTF-8编码的字符串'; $gbkStr = iconv('UTF-8', 'GBK', $utf8Str); echo $gbkStr;
mb_convert_encoding ialah fungsi terbina dalam PHP yang boleh melakukan penukaran set aksara. Ia boleh menukar rentetan UTF-8 kepada rentetan GBK dan rentetan GBK kepada rentetan UTF-8.
$gbkStr = mb_convert_encoding($utf8Str, 'GBK', 'UTF-8');
Antaranya, $utf8Str ialah rentetan UTF-8 yang perlu ditukar dan $gbkStr ialah rentetan GBK yang ditukar.
Contohnya, tukar rentetan berkod UTF-8 kepada rentetan berkod GBK:
$utf8Str = '这是一段UTF-8编码的字符串'; $gbkStr = mb_convert_encoding($utf8Str, 'GBK', 'UTF-8'); echo $gbkStr;
3 Gunakan PHP untuk menukar GBK kepada UTF-8
iconv boleh menukar rentetan GBK kepada rentetan UTF-8.
$utf8Str = iconv('GBK', 'UTF-8', $gbkStr);
Antaranya, $gbkStr ialah rentetan GBK yang perlu ditukar dan $utf8Str ialah rentetan UTF-8 yang ditukar.
Contohnya, untuk menukar rentetan berkod GBK kepada rentetan berkod UTF-8:
$gbkStr = '这是一段GBK编码的字符串'; $utf8Str = iconv('GBK', 'UTF-8', $gbkStr); echo $utf8Str;
mb_convert_encoding boleh menukar rentetan GBK ke rentetan UTF-8.
$utf8Str = mb_convert_encoding($gbkStr, 'UTF-8', 'GBK');
Antaranya, $gbkStr ialah rentetan GBK yang perlu ditukar dan $utf8Str ialah rentetan UTF-8 yang ditukar.
Contohnya, tukar rentetan berkod GBK kepada rentetan berkod UTF-8:
$gbkStr = '这是一段GBK编码的字符串'; $utf8Str = mb_convert_encoding($gbkStr, 'UTF-8', 'GBK'); echo $utf8Str;
4 Nota
Ringkasan
Artikel ini memperkenalkan cara menukar pengekodan UTF-8 kepada pengekodan GBK dalam PHP dan cara menukar pengekodan GBK kepada pengekodan UTF-8. Dengan menggunakan fungsi iconv dan mb_convert_encoding, kami boleh menukar pengekodan aksara dengan mudah untuk memenuhi senario aplikasi yang berbeza. Dalam pembangunan laman web harian, kemahiran menggunakan penukaran pengekodan aksara adalah salah satu kemahiran yang paling diperlukan.
Atas ialah kandungan terperinci Bagaimana untuk menukar pengekodan utf8 dan gbk dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!