在寫代碼時使用到了用星號代替指定數字,通常用於手機在前面頁面顯示出來時要隱藏指定幾位數字。 這裡分享三種方法,php實現手機號中間四位(n位)用星號顯示: $mobile = '13112345678';
三種方法:
代碼示例:
//1.字符串截取法
$newMobile1 = substr($mobile, 0, 5).'****'.substr($mobile, 9);
echo $newMobile1.'<br/>';
//2.替換字符串的子串
$newMobile2 = substr_replace($mobile, '****', 5, 4);
echo $newMobile2.'<br/>';
//3.用正則
$newMobile3 = preg_replace('/(\d{5})\d{4}(\d{2})/', '$1****$2', $mobile);
echo $newMobile3;
//正則
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);
}
}
使用substr_replace截取與替換函數:
$num = "13166771111"
$str = substr_replace($num,'****',3,4);
例子:
$phonenum = "13166771111";輸出: 131****1111
*