php手机号中间几位替换星号的四种方法

发布时间:2019-12-28编辑:脚本学堂
在php中将手机号的中间几位用星号代替,包括使用与不使用php正则表达式替换手机号码中间几位为星号显示的方法,主要用到preg_replace函数与substr_replace、substr函数实现字符替换。

php手机号中间几位替换星号的四种方法

在php中使用preg_replace函数实现手机号码中间指定几位替换成星号。

专题:php星号显示与隐藏内容

一、使用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
?>

二、非php正则方式替换手机号中间几位

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
?>