一、代码如下:
/**
* @desc 只保留字符串首尾字符,隐藏中间用*代替(两个字符时只显示第一个)
* @param $userName
* @return string
*
* @author ljl 2020-05-27
*/
public function substrCut($userName)
{
$strlen = mb_strlen($userName, 'utf-8');
$firstStr = mb_substr($userName, 0, 1, 'utf-8');
$lastStr = mb_substr($userName, -1, 1, 'utf-8');
$resultName = ($strlen == 2) ? $firstStr . str_repeat('*', mb_strlen($userName, 'utf-8') - 1) : $firstStr . str_repeat("*", $strlen - 2) . $lastStr;
return $resultName;
}
二、涉及函数
1、mb_strlen — 获取字符串的长度
参数:mb_strlen ( string $str [, string $encoding = mb_internal_encoding() ] )
含义:str:要检查长度的字符串。
encoding:encoding 参数为字符编码。如果省略,则使用内部字符编码。