最簡單的最實用的php手機號碼正則表達式,有需要的朋友可參考參考。
移動:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188
聯通:130、131、132、152、155、156、185、186
電信:133、153、180、189、(1349衛通)
手機號規則
代碼如下 復制代碼$regex = "/13[0-9]{9}|15[0|1|2|3|5|6|7|8|9]d{8}|18[0|5|6|7|8|9]d{8}/";
例1
判斷手機號碼:
代碼如下 復制代碼function is_mobile($str){
return preg_match(“/^(((d{3}))|(d{3}-))?13d{9}$/“, $str);
}
實例
代碼如下 復制代碼
<?php
function checkMobile($str)
{
$pattern = “/^(13|15)d{9}$/”;
if (preg_match($pattern,$str))
{
Return true;
}
else
{
Return false;
}
}
//調用函數
$str = checkMobile(“15800000001″);
if($str)
{
echo(“符合手機號碼標准”);
}
else
{
echo(“不符合手機號碼標准”);
}
?>
最後完全可以驗證目前所有手機號代碼
preg_match_all($regex,$row['mobile'], $phones);
if($phones){
正確
}
友情提示,現在關於手機判斷的,確實不太好做了,因為手機號碼變化已經比較大了.可能今天你寫了正則,明天就出了新的號碼段了,做個手機號碼段數組的,判斷是否在號碼段內數組=array(130,131,132.....)in_array(substr(號碼,0,3),數組)