php将中文替换星号的方法:1、判断字符中是否包含中文字符;2、使用mb_substr函数将指定中文部分用星号替换即可。
![图片[1]-怎么将部分中文字替换成星号php代码教程-AA源码网 | 源码收藏](https://images.aaym.net/2023/08/d2b5ca33bd161257-750x300.png!/format/webp/lossless/true)
本文操作环境:windows7系统、PHP7.1版、DELL G3电脑
怎么实现部分中文替换星号php?
PHP用户名用星号处理
PHP用户名用*号处理:
用户名:英文、中文、中英文混合的、中英文字符混合的
处理为:首字母和末尾保留,中间用号代替(一个字符直接显示,两个字符:张,三个以上字符:宋*丹)
首先判断字符中是否包含中文字符,如果有使用mb_ 系列函数处理(这里的中文使用的是UTF-8格式的)
UTF-8中文正则:”/[\x{4e00}-\x{9fa5}]+/u”
GB2312中文正则:”/[“.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) . '*';}}//判断是否包含中文字符 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) . '*'; } }//判断是否包含中文字符 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) . '*'; } }
以上就是怎么将部分中文字替换成星号的详细内容,更多请关注AA源码网其它相关文章!
本文结束END

- 最新
- 最热
只看作者