php手机号中间几位替换星号方法总结

1、字符串中包含多个手机号码

<?php
$s='王经理:13999312365 李经理:13588958741';
$s=preg_replace('#(\d{3})\d{5}(\d{3})#', '${1}*****${2}', $s);
echo $s;
//王经理:139*****365 李经理:135*****741
?>

2、字符串中只有一个手机号码

<?php
$haoma="15012345678";
echo preg_replace("/(\d{3})\d{5}/","$1*****",$haoma);
//150*****678
?>

不用正则表达式实现
1、使用substr_replace字符串部分替换函数

<?php
$string1="13264309555";
echo substr_replace($string1,'*****',3,5);
//132*****555
?>

2、使用字符串截取函数substr

<?php
echo substr($string1,0,3)."*****".substr($string1,8,3);
//132*****555
?>

发表评论

电子邮件地址不会被公开。 必填项已用*标注