hongmeigui22027 发表于 2015-8-30 10:49:50

php利用正则表达式实现手机号码格式验证代码

  php利用正则表达式实现手机号码格式验证代码
  前端代码我使用jquery.validate.js,代码如下:

  JavaScript代码
<script type="text/css">   
$(document).ready(function() {   
    $("#smForm").validate({   
      rules: {   
                smMobilePhone: {   
                  required: true,   
                  digits:true,   
                  range:   
                }   
      },   
      messages: {   
            smMobilePhone: {   
                  required: "您没有填写手机号码",   
                  digits: "手机号码格式不对",   
                  range: "手机号长度或者格式不对",   
                }   
      },   
      preErrs : {   
               
      }   
    });   
});   
</script>  这只是一个不精确的验证,只能大概验证到一个范围而已,所以重点还在后面。
  PHP代码
$mobilephone=trim($_POST["smMobilePhone"]);   
//手机号码的正则验证   
if(preg_match("/^13{1}{8}$|15{1}{8}$|189{8}$/",$mobilephone)){   
    //验证通过   
      
}else{   
    //手机号码格式不对   
      
}   看实例
  <?php
//正则表达式
$tel = "15551530459";//作者的手机号码,如果有疑问可以电话联系我,我的邮箱是admin@www.3ppt.com
if(strlen($tel) == "11")
{
//上面部分判断长度是不是11位
$n = preg_match_all("/13{1}d{8}|15d{8}|188d{8}/",$tel,$array);
/*接下来的正则表达式("/131,132,133,135,136,139开头随后跟着任意的8为数字 '|'(或者的意思)
* 151,152,153,156,158.159开头的跟着任意的8为数字
* 或者是188开头的再跟着任意的8为数字,匹配其中的任意一组就通过了
* /")*/
  var_dump($array); //看看是不是找到了,如果找到了,就会输出电话号码的
}else
{
echo "长度必须是11位";
}
/*
* 虽然看起来复杂点,清楚理解!
* 如果有更好的,可以贴出来,分享快乐!
* */
?>
页: [1]
查看完整版本: php利用正则表达式实现手机号码格式验证代码