php验证手机号码


Posted in PHP onNovember 11, 2015

大家都应该有这个常识,中国的手机号码都是以数字“1”开头,然后利用“0~9”10个数字组成的11位数字组合,那么我们的验证规则肯定要根据这个思路来写。
根据上面的简单思路,我们便可以写下以下的验证代码,代码如下:

<?php  
  //本代码仅仅是提供一些思路  
  //距离实际应用还有一些距离  
   $mobile = '15858588585';  
  //下面的1便是手机的第一位数字必须为数字1  
  //[0-9]指后面的数字均为0~9的数字  
  //{9}这中间的9指的是手机号码除了第一位数外,其他要重复10次,刚好就是11位数了  
  if(!preg_match('/^1([0-9]{9})/',$mobile)) exit('您的手机号码不正确');  
?>

但上面的代码显然是不够严谨的,因为这样,即使“18888888888”这样的手机号码也能通过验证了,因此我们还要对其进行更为严格的验证,在严格之前请让我们先来看看中国常见的手机号码前三位都有那些:
移动手机号码:134、135、136、137、138、139、150、151、157(TD)、158、159、187、188

联通手机号码:130、131、132、152、155、156、185、186  

电信手机号码:133、153、180、189、(1349卫通)
那么根据上面的特征,我们就可以将代码修改成这样的规则了,代码如下:

<?php 
   function checkMobile($str) 
   { 
     $pattern = “/^(13|15)d{9}$/”; 
     if (preg_match($pattern,$str)) 
     { 
       Return true; 
     } 
     else 
     { 
       Return false; 
     } 
   } 
  //调用函数 
  $str = checkMobile(“15800000001″); 
   if($str) 
   { 
   echo(“符合手机号码标准”); 
   } 
   else 
   { 
   echo(“不符合手机号码标准”); 
   } 
  ?>

上面只能骓13,15开头的,如果有新段就不行了,我们可加以修改,代码如下:

function is_mobile($str){  
return preg_match("/^(((d{3}))|(d{3}-))?13d{9}$/", $str);  
}

这样就可以验证所有的手机号码了,整个解析思路环环相扣,针对php验证手机号码进行详细分析,得出解决方法。

以上就是为大家分享的php验证手机号码的方法,希望对大家的学习有所帮助。

PHP 相关文章推荐
解决php中Cannot send session cache limiter 的问题的方法
Apr 27 PHP
PHP 日期加减的类,很不错
Oct 10 PHP
PHP启动windows应用程序、执行bat批处理、执行cmd命令的方法(exec、system函数详解)
Oct 20 PHP
PHP中使用xmlreader读取xml数据示例
Dec 29 PHP
php程序总是提示验证码输入有误解决方案
Jan 07 PHP
php定义一个参数带有默认值的函数实例分析
Mar 16 PHP
Zend Framework动作控制器用法示例
Dec 09 PHP
微信公众号OAuth2.0网页授权问题浅析
Jan 21 PHP
PHP静态成员变量
Feb 14 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
php+ajax实现商品对比功能示例
Apr 13 PHP
PHP 进程池与轮询调度算法实现多任务的示例代码
Nov 26 PHP
Thinkphp无限级分类代码
Nov 11 #PHP
php验证码生成代码
Nov 11 #PHP
分享10段PHP常用代码
Nov 11 #PHP
php+mysql实现无限级分类
Nov 11 #PHP
2款PHP无限级分类实例代码
Nov 11 #PHP
PHP中set error handler函数用法小结
Nov 11 #PHP
php实现Session存储到Redis
Nov 11 #PHP
You might like
将兴奋、喜悦和坎加斯带到戴安娜:亚马逊公主
2020/03/03 欧美动漫
将OICQ数据转成MYSQL数据
2006/10/09 PHP
PHP动态生成指定大小随机图片的方法
2016/03/25 PHP
推荐自用 Javascript 缩图函数 (onDOMLoaded)……
2007/10/23 Javascript
论坛里点击别人帖子下面的回复,回复标题变成“回复 24# 的帖子”
2009/06/14 Javascript
jquery插件制作 提示框插件实现代码
2012/08/17 Javascript
解决checkbox的attr(checked)一直为undefined问题
2014/06/16 Javascript
基于Jquery实现仿百度百科右侧导航代码附源码下载
2015/11/27 Javascript
jQuery Mobile 触摸事件实例
2016/06/04 Javascript
JQuery统计input和textarea文字输入数量(代码分享)
2016/12/29 Javascript
Vue.js如何优雅的进行form validation
2017/04/07 Javascript
Swiper自定义分页器使用详解
2017/12/28 Javascript
jQuery滚动条美化插件nicescroll简单用法示例
2018/04/18 jQuery
详解vue的diff算法原理
2018/05/20 Javascript
require.js 加载过程与使用方法介绍
2018/10/30 Javascript
微信小程序实现卡片左右滑动效果的示例代码
2019/05/01 Javascript
微信小程序实现侧边栏分类
2019/10/21 Javascript
Nodejs 微信小程序消息推送的实现
2021/01/20 NodeJs
[03:54]Ehome出征西雅图 回顾2016国际邀请赛晋级之路
2016/08/02 DOTA
[35:27]完美世界DOTA2联赛循环赛 GXR vs FTD BO2第二场 10.29
2020/10/29 DOTA
python结合shell查询google关键词排名的实现代码
2016/02/27 Python
Python中json格式数据的编码与解码方法详解
2016/07/01 Python
用python写个自动SSH登录远程服务器的小工具(实例)
2017/06/17 Python
Python安装OpenCV的示例代码
2020/03/05 Python
python学生管理系统的实现
2020/04/05 Python
python实现最短路径的实例方法
2020/07/19 Python
如何利用Python给自己的头像加一个小国旗(小月饼)
2020/10/02 Python
Python中过滤字符串列表的方法
2020/12/22 Python
意大利自行车商店:Cingolani Bike Shop
2019/09/03 全球购物
100%羊绒:NakedCashmere
2020/08/26 全球购物
比较基础的php面试题及答案-编程题
2012/10/14 面试题
工程造价与管理专业应届生求职信
2013/11/23 职场文书
最新党员思想汇报
2014/01/01 职场文书
中国梦团日活动总结
2014/07/07 职场文书
2015年宣传部个人工作总结
2015/05/14 职场文书
高中数学教学反思范文
2016/02/18 职场文书