转自或参考:PHP实现手机号码中间四位用星号(*)隐藏的自定义函数分享_php技巧_脚本之家
https://www.jb51.net/article/55704.htmphp
Method 1: 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); } } Method 2: $num = "13966778888" $str = substr_replace($num,'****',3,4);
$phonenum = "13966778888"; echo hidtel($phonenum);