当前位置:首页 > PHP教程 > 正则表达式 > 列表

php屏蔽电话号码中间四位示例

发布:smiling 来源: PHP粉丝网  添加日期:2014-06-21 09:29:20 浏览: 评论:0 

屏蔽电话号码中间数字这个我们在一些购物网站常见到的手法了,下面我利用正则表达式来实现,具体原理我也不说多了大家都知道的,这里直接给例子.

函数代码如下:

  1. function hidtel($phone){ 
  2.     $IsWhat = preg_match('/(0[0-9]{2,3}[-]?[2-9][0-9]{6,7}[-]?[0-9]?)/i',$phone); //固定电话 
  3.     if($IsWhat == 1){ 
  4.         return preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i','$1****$2',$phone); 
  5.     }else
  6.         return  preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone); 
  7.     } 
  8. //示例: 
  9. $phonenum = "13966778888"
  10. echo hidtel($phonenum); 
  11. //最后输出:139****8888 

例子L

1、屏蔽手机号码中间段,代码如下:

preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone);

2、屏蔽固定电话中间段,代码如下:

preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i','$1****$2',$phone);

例如如下代码:

  1. $phone = '010-88888888-8'
  2. $phone1 = '13888888888'
  3. $phone = preg_replace('/(0[0-9]{2,3}[-]?[2-9])[0-9]{3,4}([0-9]{3}[-]?[0-9]?)/i','$1****$2',$phone); 
  4. $phone1 = preg_replace('/(1[358]{1}[0-9])[0-9]{4}([0-9]{4})/i','$1****$2',$phone1); 
  5. echo $phone,'<br>www.111Cn.net'
  6. echo $phone1,'<br>'
  7. //结果输出: 
  8. //138****8888 
  9. //010-8****888 

Tags: php屏蔽电话号码 四位示例

分享到: