十年网站开发经验 + 多家企业客户 + 靠谱的建站团队
量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决
1、替换字符串中的123
创新互联从2013年成立,是专业互联网技术服务公司,拥有项目网站设计、做网站网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元房山做网站,已为上家服务,为房山各地企业和个人服务,联系电话:13518219792
$str = "123abc123";
echo str_replace('123', '***', $str);
2、替换字符串其中一段
$num = "13966778888";
echo substr_replace($num,'****',3,4);
function func($str){
$len = strlen($str);
if($len = 4){
return $str;
}
return str_repeat('*', $len - 4).substr($str, -4);
}
echo func('87654321');//****4321
?php
$num = 896899766;
$num2 = substr($num,0,1).'*'.substr($num,-1,1);
echo $num2;
?
网站展示用户隐私数据的时候,需要安全处理。比如:对手机号码中间五位或多位进行*号替换。PHP常用处理的方式有两种,一种是用substr进行截取,然后拼接*号;另一种是使用正则替换。示例代码如下:
//index.php
?php
header("Content-type:text/html;charset=utf-8;");
//测试
//纯手机号码
$phone="10021012110";
echo phoneSafeDeal($phone);
echo "br/";
$phoneStr="联系方式:10021012110";
echo phoneSafeDeal($phoneStr,true);
/**
* 手机号码安全处理(中间五位用*代替)
*
* @param String $phone
* @param boolean $string
*/
function phoneSafeDeal($phone,$flag=false){
//字符串中包含手机号码替换
if($flag){
return preg_replace('/(\d{3})\d{5}(\d{3})/', '${1}*****${2}', $phone);
}else{
//纯手机号码处理
return substr($phone,0,3)."*****".substr($phone,8,3);
}
}
运行结果:
这里需要用到一个php的函数:substr_replace() 函数把字符串的一部分替换为另一个字符串。
这个函数的用法如下:substr_replace(string,replacement,start,length)
参数:
string 要被检查提取内容的字符串
replacement 替换后的字符串
start 截取的开始位置(以0开始)
length 截取的长度
直接上代码:(假如数据库中的电话号码的字段名为 phone)
$model = D('User);
$dataList = $model-select(); //请加上你自己需要的条件
if($dataList)
{
foreach($dataList as $key=$value)
{
$dataList[$key]['phone'] = substr_replace($value['phone'], '****', 3, 4);
}
}
var_dump($dataList);
输出如下:
array (size=2)
0 =
array (size=1)
'phone' = string '135****8956' (length=11)
1 =
array (size=1)
'phone' = string '159****7845' (length=11)
*.php 表示所有的php文件
*.txt 表示所有的txt文件
*号就是通配符,表示任意字符