之前做项目需要信息脱敏做的一个处理方法,可以定义首尾及中间显示星号数量
function secret_str($str,$prefix = 4,$suffix =4,$max_star = 4){
if(empty($str) || empty($max_star)) return $str;
$strLen = strlen($str);
if($prefix > 0 && $strLen <= $prefix) return $str;
if($suffix > 0 && $strLen <= $suffix) return $str;
if($strLen <= ($prefix + $suffix)){
if($prefix > 0){
$starNum = $strLen - $prefix;
$star = str_repeat("*",$starNum);
return substr($str,0,$prefix).$star;
}else{
$starNum = $strLen - $suffix;
$star = str_repeat("*",$starNum);
return $star.substr($str,$starNum);
}
}
if($prefix > 0){
$first = substr($str,0,$prefix);
}else{
$first = "";
}
if($suffix > 0){
$end = substr($str,$strLen- $suffix);
}else{
$end = "";
}
$starNum = $strLen - $prefix - $suffix;
$starNum = min($starNum,$max_star);
$middle = str_repeat("*",$starNum);
return $first.$middle.$end;
}
function secret_idnumber($idnumber){
return secret_str($idnumber,2,2);
}
function secret_name($name){
return secret_str($name,1,1);
}
function secret_phone($phone){
return secret_str($phone,3,4);
}
用户今天 : 14
用户昨天 : 27
用户最近的7天 : 144
用户最近的30天 : 686
用户这个月 : 631
用户这一年 : 2078
合计用户 : 8747
查看今天 : 66
查看昨天 : 33
查看最近7天 : 205
查看最近30天的 : 836
查看这个月 : 778
查看这一年 : 2764
合计查看 : 10928
谁是在线的 : 0