Sebagai bahasa pengaturcaraan yang sangat berkuasa, PHP mempunyai banyak fungsi manipulasi rentetan untuk digunakan oleh pembangun. Semasa pembangunan, kadangkala kita perlu menukar rentetan yang mengandungi aksara Cina ke dalam format tatasusunan untuk pemprosesan data seterusnya. Artikel ini akan memperkenalkan cara menggunakan fungsi dalam PHP untuk menukar rentetan aksara Cina kepada tatasusunan.
1. Tukar rentetan kepada pengekodan Unikod
Sebelum menukar rentetan aksara Cina kepada tatasusunan, kita perlu menukarnya terlebih dahulu kepada format pengekodan Unikod. Kita boleh menggunakan fungsi mb_convert_encoding()
dalam PHP untuk mencapai langkah ini.
Kod contoh:
$str = '中文字符串'; $unicode_str = mb_convert_encoding($str, 'UCS-2LE', 'UTF-8');
Dalam kod di atas, $str
ialah rentetan aksara Cina yang perlu ditukar kepada pengekodan Unikod, UCS-2LE
ialah format pengekodan sasaran dan UTF-8
ialah format pengekodan sumber . Selepas melaksanakan kod di atas, $unicode_str
yang diperolehi ialah rentetan dalam format pengekodan Unicode.
2. Tukar rentetan yang dikodkan Unikod kepada tatasusunan
Seterusnya, kita perlu menukar rentetan yang dikodkan Unikod kepada tatasusunan. Kita boleh menggunakan fungsi unpack()
dalam PHP untuk menukarnya kepada tatasusunan.
Kod sampel:
$str = '中文字符串'; $unicode_str = mb_convert_encoding($str, 'UCS-2LE', 'UTF-8'); $unicode_arr = unpack('S*', $unicode_str);
Dalam kod di atas, $unicode_arr
ialah tatasusunan yang ditukar, setiap elemen mewakili pengekodan Unikod bagi aksara Cina. Kita boleh menggunakan struktur gelung untuk menukarnya kembali kepada rentetan aksara Cina Kod contoh adalah seperti berikut:
$str = '中文字符串'; $unicode_str = mb_convert_encoding($str, 'UCS-2LE', 'UTF-8'); $unicode_arr = unpack('S*', $unicode_str); $str_arr = array(); foreach($unicode_arr as $code){ $str_arr[] = mb_convert_encoding(pack('S', $code), 'UTF-8', 'UCS-2LE'); } print_r($str_arr);
Dalam kod di atas, $str_arr
ialah rentetan aksara Cina yang ditukar. Seperti yang anda lihat, kami menggunakan fungsi pack()
untuk menghuraikan pengekodan Unikod ke dalam data binari asal dan kemudian menggunakan fungsi mb_convert_encoding()
untuk melakukan penukaran pengekodan, dan akhirnya memperoleh rentetan aksara Cina dalam format tatasusunan.
Ringkasan
PHP menyediakan banyak fungsi untuk mengendalikan rentetan, dan kami boleh menukar rentetan aksara Cina ke dalam format tatasusunan dengan mudah. Dalam pembangunan sebenar, adalah perlu untuk memilih kaedah yang sesuai untuk memproses rentetan mengikut keperluan dan situasi tertentu.
Atas ialah kandungan terperinci PHP menukar rentetan aksara Cina kepada tatasusunan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!