php屏蔽电话号码中间四位示例
屏蔽电话号码中间数字这个我们在一些购物网站常见到的手法了,下面我利用正则表达式来实现,具体原理我也不说多了大家都知道的,这里直接给例子。
函数
<?php
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);
}
}
示例:
$phonenum = "13966778888";
echo hidtel($phonenum);
?>最后输出:139****8888
例子
1、屏蔽手机号码中间段:
<?php
preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone);
?>2、屏蔽固定电话中间段:
例如:
<?php
$phone = '010-88888888-8';
$phone1 = '13888888888';
$phone = preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i','$1****$2',$phone);
$phone1 = preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone1);
echo $phone,'<br>';
echo $phone1,'<br>';
?>结果输出:
138****8888 010-8****888
永久链接:http://www.phprm.com/code/59438.html
转载随意!带上文章地址吧。