Rumah >pembangunan bahagian belakang >masalah PHP >Bagaimana untuk menggantikan asterisk dalam bahasa Cina dalam php
Cara menggantikan asterisk dengan bahasa Cina dalam PHP: 1. Tentukan sama ada aksara mengandungi aksara Cina 2. Gunakan fungsi mb_substr untuk menggantikan bahagian Cina yang ditentukan dengan asterisk.
Persekitaran pengendalian artikel ini: sistem Windows 7, PHP versi 7.1, komputer DELL G3
Cara menggantikan asterisk dengan Bahasa Cina dalam php?
Nama pengguna PHP diproses dengan asterisk
Nama pengguna PHP diproses dengan tanda *:
Nama pengguna: Inggeris, Cina, campuran Cina dan Inggeris, Cina dan Inggeris Campuran aksara
diproses seperti berikut: huruf pertama dan penghujungnya dikekalkan, dan bahagian tengah digantikan dengan * (satu aksara dipaparkan secara langsung, dua aksara: Zhang*, tiga atau lebih aksara: Song*Dan )
Mula-mula tentukan sama ada aksara itu mengandungi aksara Cina, dan jika ya, gunakan siri mb_ fungsi (bahasa Cina di sini menggunakan format UTF-8)
UTF-8 biasa Cina: "/ [x{4e00}- x{9fa5}] /u"
GB2312 biasa Cina: "/[".chr(0xa1)."-".chr(0xff)."] /"
//判断是否包含中文字符 if(preg_match("/[\x{4e00}-\x{9fa5}]+/u", $str)) { //按照中文字符计算长度 $len = mb_strlen($str, 'UTF-8'); //echo '中文'; if($len >= 3){ //三个字符或三个字符以上掐头取尾,中间用*代替 $str = mb_substr($str, 0, 1, 'UTF-8') . '*' . mb_substr($str, -1, 1, 'UTF-8'); } elseif($len == 2) { //两个字符 $str = mb_substr($str, 0, 1, 'UTF-8') . '*'; } } else { //按照英文字串计算长度 $len = strlen($str); //echo 'English'; if($len >= 3) { //三个字符或三个字符以上掐头取尾,中间用*代替 $str = substr($str, 0, 1) . '*' . substr($str, -1); } elseif($len == 2) { //两个字符 $str = substr($str2, 0, 1) . '*'; } }
Pembelajaran yang disyorkan: "Tutorial Video PHP"
Atas ialah kandungan terperinci Bagaimana untuk menggantikan asterisk dalam bahasa Cina dalam php. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!