您好,登錄后才能下訂單哦!
這篇文章主要講解了“php如何將中文替換星號”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“php如何將中文替換星號”吧!
php將中文替換星號的方法:1、判斷字符中是否包含中文字符;2、使用mb_substr函數將指定中文部分用星號替換即可。
本文操作環境: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) . '*'; } }
感謝各位的閱讀,以上就是“php如何將中文替換星號”的內容了,經過本文的學習后,相信大家對php如何將中文替換星號這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。