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

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

前端代码我使用jquery.validate.js,代码如下:

JavaScript代码

$(document).ready(function() {

$("#smForm").validate({

rules: {

smMobilePhone: {

required: true,

digits:true,

range:[13000000000,18999999999]

}

},

messages: {

smMobilePhone: {

required: "您没有填写手机号码",

digits: "手机号码格式不对",

range: "手机号长度或者格式不对",

}

},

preErrs : {

}

});

});

这只是一个不精确的验证,只能大概验证到一个范围而已,所以重点还在后面。

PHP代码

$mobilephone=trim($_POST["smMobilePhone"]);

//手机号码的正则验证

if(preg_match("/^13[0-9]{1}[0-9]{8}$|15[0189]{1}[0-9]{8}$|189[0-9]{8}$/",$mobilephone)){

//验证通过

}else{

//手机号码格式不对

}

看实例

//正则表达式

$tel = "15551530459";//作者的手机号码,如果有疑问可以电话联系我,我的邮箱是admin@www.3ppt.com

if(strlen($tel) == "11")

{

//上面部分判断长度是不是11位

$n = preg_match_all("/13[123569]{1}d{8}|15[1235689]d{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位";

}

/*

* 虽然看起来复杂点,清楚理解!

* 如果有更好的,可以贴出来,分享快乐!

* */

?>

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值