PHP手机号正则(多号段)

Posted lindsayYang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PHP手机号正则(多号段)相关的知识,希望对你有一定的参考价值。


   public function phoneReg()
   {
/**
* 中国电信:China Telecom
* 133、149、153、173、177、180、181、189、199
*/
$ct = "/^1((33|49|53|73|77|80|81|89|99)[0-9])d{7}$/";

/**
* 中国联通:China Unicom
* 130、131、132、145、155、156、166、171、175、176、185、186
*/
$cu = "/^1(30|31|32|45|55|56|66|71|75|76|85|86)d{8}$/";

/**
* 中国移动:China Mobile
* 134(0-8)、135、136、137、138、139、147、150、151、152、157、158、159、178、182、183、184、187、188、198
*/
$cm = "/^1(34[0-8]|(3[5-9]|47|5[012789]|78|8[23478]|98)[0-9])d{7}$/";

/**
* 其他号段
* 14号段以前为上网卡专属号段,如中国联通的是145,中国移动的是147等等。
*/
$co = "/^14d{9}$/";

/**
* 虚拟运营商
* 电信:1700、1701、1702
* 移动:1703、1705、1706
* 联通:1704、1707、1708、1709、171
*/
$cx = "/^1(700|701|702|703|705|706|66|704|707|708|709)d{7}$/";

/**
* 卫星通信:1349
*/
$cw = "/^1349d{7}$/";

if (preg_match($cm, $value)) {
return true;
} else if (preg_match($cu, $value)) {
return true;
} else if (preg_match($ct, $value)) {
return true;
} else if (preg_match($co, $value)) {
return true;
} else if (preg_match($cx, $value)) {
return true;
} else if (preg_match($cw, $value)) {
return true;
}
return false;
}





















































以上是关于PHP手机号正则(多号段)的主要内容,如果未能解决你的问题,请参考以下文章

php正则判断手机号码的方法

手机号码正则(已测试可以)

js 手机号码简单正则校验

正则表达式:手机号验证

Java处理正则验证手机号-详解

手机号码正则表达式