-5

我是 php 新手,我正在尝试使用正则表达式验证手机号码。它的总长度是 13,必须以 88016 或 88017 或 88015 或 88018 或 88019 或 88011 开头。所以数字格式如下所示:

88016XXXXXXXX OR 88015XXXXXXXX OR 88017XXXXXXXX OR 88019XXXXXXXX OR 88011XXXXXXXX

但是我累了。请看下面的代码。我觉得我的表达有问题。。

if( !preg_match("/^([0-9]-)?[0-9]$/", $write_numer))            
     $err[] = "Please enter a valid phone number";

非常感谢你的帮助。

4

3 回答 3

3

试试这个

if (preg_match("/^8801(6|5|7|9|1)\d{8}$/", $value)) {
        echo "yes";
}
于 2013-09-16T06:07:06.327 回答
2

试试这个:

$pattern = "/^(880)(16|15|17|19|11)(\d){8}$/";

if( !preg_match($patterm, $write_numer))            
     $err[] = "Please enter a valid phone number";
于 2013-09-16T06:06:58.147 回答
1

这应该可以解决问题:

preg_match("/^8801[5-7|1|9][0-9]{8}$/", $write_numer)
于 2013-09-16T06:13:13.913 回答