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

2014年05月06日 01:10 by:老修

导读: php用正则表达式判断手机号码的写法:从文章中匹配出所有的手机号就可以preg_match_all(),如果要检查用户输入的手机号是否正确可这样来检查:preg_match().

用正则匹配手机号码的时候, 我们先分析一下手机号码的规律:

1. 手机号通常是11位的

2. 经常是1开头

3. 第二个数字通常是34578这几个数字, 2014.5.5日170号段的手机号开卖所以这里多了个7.

php用正则表达式判断手机号码的写法:

  1. $g = "/^1[34578]\d{9}$/"; 
    // "^"符号表示必须是1开头; "[ ]"的意思是第二个数字必须是中括号中一个数字; 而 \d 则表示0-9任意数字,后跟{9}表示长度是9个数字; 后面的$表示结尾; 开始和结尾的 / 是正则表达式必须放在这个中间, 有的后面可能还跟模式.

从文章中匹配出所有的手机号就可以这样写了:

  1. $str = '老吧博客作者的手机是18912345678';
  2. preg_match_all("/^1[34578]\d{9}$/", $str, $mobiles);
  3. //var_dump($mobiles);

如果要检查用户输入的手机号是否正确可这样来检查:

  1. if(preg_match("/^1[34578]\d{9}$/", $mobile)){
  2. //这里有无限想象
  3. }