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实现分页的一个示例
Oct 09 PHP
php将数据库导出成excel的方法
May 07 PHP
PHP5 的对象赋值机制介绍
Aug 02 PHP
PHP session会话的安全性分析
Sep 08 PHP
php 中的4种标记风格介绍
May 10 PHP
使用php发送有附件的电子邮件-(PHPMailer使用的实例分析)
Apr 26 PHP
强制PHP命令行脚本单进程运行的方法
Apr 15 PHP
PHP之uniqid()函数用法
Nov 03 PHP
php利用事务处理转账问题
Apr 22 PHP
php实现基于pdo的事务处理方法示例
Jul 21 PHP
PHP htmlspecialchars() 函数实例代码及用法大全
Sep 18 PHP
PHP配置文件php.ini中打开错误报告的设置方法
Jan 09 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
输出控制类
2006/10/09 PHP
PHP编程过程中需要了解的this,self,parent的区别
2009/12/30 PHP
linux环境apache多端口配置虚拟主机的方法深入介绍
2013/06/09 PHP
php反射应用示例
2014/02/25 PHP
php socket通信(tcp/udp)实例分析
2016/02/14 PHP
php cookie用户登录的详解及实例代码
2017/01/03 PHP
基于PHP实现的多元线性回归模拟曲线算法
2018/01/30 PHP
JavaScript 以对象为索引的关联数组
2010/05/19 Javascript
jQuery操作表单常用控件方法小结
2015/03/23 Javascript
JS实现网页每隔3秒弹出一次对话框的方法
2015/11/09 Javascript
Bootstrap框架动态生成Web页面文章内目录的方法
2016/05/12 Javascript
jQuery UI结合Ajax创建可定制的Web界面
2016/06/22 Javascript
BOM系列第二篇之定时器requestAnimationFrame
2016/08/17 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
Bootstrap的基本应用要点浅析
2016/12/19 Javascript
原生JavaScript实现精美的淘宝轮播图效果示例【附demo源码下载】
2017/05/27 Javascript
一文快速了解JQuery中的AJAX
2019/05/31 jQuery
jQuery实现的上拉刷新功能组件示例
2020/05/01 jQuery
简单了解three.js 着色器材质
2020/08/03 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
[00:35]DOTA2上海特级锦标赛 EG战队宣传片
2016/03/04 DOTA
[37:21]完美世界DOTA2联赛PWL S2 Inki vs Magma 第二场 11.22
2020/11/24 DOTA
Python中用altzone()方法处理时区的教程
2015/05/22 Python
flask入门之表单的实现
2018/07/18 Python
Python3实现的判断回文链表算法示例
2019/03/08 Python
详解Django3中直接添加Websockets方式
2020/02/12 Python
HTML5 input新增type属性color颜色拾取器的实例代码
2018/08/27 HTML / CSS
公司前台接待岗位职责
2013/12/03 职场文书
网络技术专业推荐信
2014/02/20 职场文书
升旗仪式主持词
2014/03/19 职场文书
公司新人试用期自我评价
2014/09/17 职场文书
环境工程专业毕业生求职信
2014/09/30 职场文书
晚会闭幕词
2015/01/28 职场文书
英语通知范文
2015/04/22 职场文书
Nginx+SpringBoot实现负载均衡的示例
2021/03/31 Servers
Python中第三方库Faker的使用详解
2022/04/02 Python