PHP ialah bahasa pengaturcaraan yang digunakan secara meluas, terutamanya sesuai untuk pembangunan web. Salah satu tugas asas ialah menangani pengekodan Cina, terutamanya apabila berurusan dengan pengekodan GBK. Artikel ini akan menerangkan cara menetapkan format pengekodan GBK dalam PHP untuk mengendalikan aksara Cina dengan betul.
Pengekodan GBK ialah kaedah pengekodan aksara Cina yang meliputi set aksara Cina Ringkas, Cina Tradisional dan Asia yang lain. Kaedah pengekodan GBK pada asalnya dibangunkan di China Nama penuhnya ialah "Spesifikasi Pengembangan Kod Dalaman Karakter Cina Baru Kebangsaan". Dalam pengekodan GBK, setiap aksara Cina menduduki dua bait.
Tetapan pengekodan dalam PHP boleh dicapai melalui dua pemalar: DEFAULT_CHARSET
dan DEFAULT_MIMETYPE
. Pemalar DEFAULT_CHARSET
digunakan untuk menetapkan set aksara dokumen HTML, manakala DEFAULT_MIMETYPE
digunakan untuk menetapkan jenis MIME fail.
Walau bagaimanapun, kedua-dua pemalar ini hanya berfungsi apabila mengakses pelayan web, ia tidak menjejaskan tetapan set aksara PHP itu sendiri. Jika anda ingin menetapkan set aksara dalam kod PHP, anda perlu menggunakan fungsi header()
untuk menetapkan maklumat pengepala HTTP.
Sebagai contoh, untuk menetapkan format pengekodan GBK, anda boleh menggunakan kod berikut:
header('Content-Type:text/html;charset=gbk');
Dengan cara ini, apabila skrip PHP mengembalikan kandungan HTML, penyemak imbas akan menghuraikan kandungan dalam pengekodan GBK.
Inti pemprosesan pengekodan GBK ialah menggunakan fungsi mb_convert_encoding()
. Fungsi ini menukar rentetan daripada satu pengekodan kepada pengekodan yang lain.
Gunakan kod berikut untuk menukar rentetan daripada format pengekodan UTF-8 kepada format pengekodan GBK:
$gbk_string = mb_convert_encoding($utf8_string, 'GBK', 'UTF-8');
Dalam contoh ini, $utf8_string
berada dalam String format UTF-8 dan $gbk_string
ialah rentetan format GBK yang ditukar.
Memandangkan pengekodan GBK menggunakan dua bait untuk mewakili aksara Cina, menggunakan pengekodan GBK dalam URL akan menyebabkan beberapa masalah. Khususnya, sesetengah aksara dikodkan sebagai dua simbol %
ditambah dua digit heksadesimal, yang boleh menyebabkan URL menjadi sangat panjang dan sukar dibaca.
Untuk menyelesaikan masalah ini, anda boleh menggunakan fungsi urlencode()
untuk mengekod URL rentetan. Fungsi ini menukar aksara khas dalam rentetan kepada kod ASCII untuk digunakan dalam URL. Sebagai contoh, kod berikut akan mengekod rentetan $str
ke dalam format yang dikenali oleh URL:
$url_str = urlencode($str);
PHP ialah bahasa pengaturcaraan yang sangat sesuai untuk mengendalikan bahasa Cina pengekodan. Apabila berurusan dengan pengekodan GBK, anda perlu memberi perhatian kepada tetapan set aksara dan penukaran pengekodan. Dengan tetapan dan penukaran yang betul, anda boleh memastikan bahawa PHP boleh mengendalikan aksara Cina dengan betul, menghasilkan pengalaman pengguna yang lebih baik.
Atas ialah kandungan terperinci Bagaimana untuk menetapkan format pengekodan gbk dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!