Home > Article > Backend Development > 怎样用PHP把电话号码和姓名加星号?解决思路
怎样用PHP把电话号码和姓名加星号?
在网上找了一下,一个教材不行的
http://www.haogongju.net/art/848588
preg_replace('/(0[0-9]{2,3}[\-]?[2-9])[0-9]{3,4}([0-9]{3}[\-]?[0-9]?)/i','$1****$2',$phone);
我想把姓名和电话(固话8位或者手机11 中间部分变成*号
------解决方案--------------------
$tel1 = "13888111188"; $tel2 = "+8613888111188"; $tel3 = "0861088111188"; $tel4 = "086-010-88111188"; echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel1),"\n"; echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel2),"\n"; echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel3),"\n"; echo preg_replace('/(^.*)\d{4}(\d{4})$/','\\1****\\2',$tel4),"\n"; <br><font color="#e78608">------解决方案--------------------</font><br>
//屏蔽电话号码中间的四位数字 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); } } <div class="clear"> </div>