http://www.jb51.net/article/48800.htmphp
1、仿淘宝评论购买记录隐藏部分用户名,如下代码亲测可用。函数
if(count($t_string[0]) - $start > $sublen) return join('', array_slice($t_string[0], $start, $sublen));
return join('', array_slice($t_string[0], $start, $sublen));
}
else
{
$start = $start*2;
$sublen = $sublen*2;
$strlen = strlen($string);
$tmpstr = '';字体
for($i=0; $i< $strlen; $i++)
{
if($i>=$start && $i< ($start+$sublen))
{
if(ord(substr($string, $i, 1))>129)
{
$tmpstr.= substr($string, $i, 2);
}
else
{
$tmpstr.= substr($string, $i, 1);
}
}
if(ord(substr($string, $i, 1))>129) $i++;
}
//if(strlen($tmpstr)< $strlen ) $tmpstr.= "...";
return $tmpstr;
}
}spa
2、PHP身份证号后4位用星号隐藏.net
一个很简单的问题,想把身份证的号生日的4位隐藏,一开始查函数竟然没有看到,而后用了好几个函数处理,以为太麻烦就上网搜,后来发现有一个函数就能直接处理,因此记录一下:
substr_replace()函数简介:code
使用实例:htm
3、将IP最后一位替换为星号ip
将IP最后一位替换为星号 代码以下:
方法一:字符串
4、手机号中间用*星号隐藏的方法五则string
//方法三
$haoma="15012345678";
echo preg_replace("/(d{3})d{5}/","$1*****",$haoma);
//输出150*****678
//方法四
$tel1 = "13888111188";
$tel2 = "+8613888111188";
$tel3 = "0861088111188";
$tel4 = "086-010-88111188";
echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel1),"\n";
echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel2),"\n";
echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel3),"\n";
echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel4),"\n";
//方法五
//屏蔽电话号码中间的四位数字
function hidtel($phone)
{
$IsWhat = preg_match('/(0[0-9]{2,3}[\-]?[2-9][0-9]{6,7}[\-]?[0-9]?)/i',$phone); //固定电话
if($IsWhat == 1)
{
return preg_replace('/(0[0-9]{2,3}[\-]?[2-9])[0-9]{3,4}([0-9]{3}[\-]?[0-9]?)/i','$1****$2',$phone);
} else { return preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone); }}