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 修改zen-cart下单和付款流程以防止漏单
Mar 08 PHP
php下载文件的代码示例
Jun 29 PHP
PHP判断指定时间段的2个方法
Mar 14 PHP
PHP实现的多彩标签效果代码分享
Aug 21 PHP
php实现parent调用父类的构造方法与被覆写的方法
Feb 11 PHP
thinkphp3.x中display方法及show方法的用法实例
May 19 PHP
php 魔术常量详解及实例代码
Dec 04 PHP
Zend Framework基于Command命令行建立ZF项目的方法
Feb 18 PHP
PDO::getAvailableDrivers讲解
Jan 28 PHP
PHP使用mongoclient简单操作mongodb数据库示例
Feb 08 PHP
Yii框架使用PHPExcel导出Excel文件的方法分析【改进版】
Jul 24 PHP
PHP7 参数处理机制修改
Mar 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
深入解析php之sphinx
2013/05/15 PHP
php实现的一个很好用HTML解析器类可用于采集数据
2013/09/23 PHP
php+ajax实现无刷新分页
2015/11/18 PHP
Laravel 验证码认证学习记录小结
2019/12/20 PHP
document.all与WEB标准
2020/05/13 Javascript
(推荐一个超好的JS函数库)S.Sams Lifexperience ScriptClassLib
2007/04/29 Javascript
Extjs TriggerField在弹出窗口显示不出问题的解决方法
2010/01/08 Javascript
自己实现string的substring方法 人民币小写转大写,数字反转,正则优化
2012/09/02 Javascript
intro.js 页面引导简单用法 分享
2013/08/06 Javascript
jQuery控制iFrame(实例代码)
2013/11/19 Javascript
jquery validate 自定义验证方法介绍 日期验证
2014/02/27 Javascript
html的DOM中document对象forms集合用法实例
2015/01/21 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
JS表格组件神器bootstrap table详解(基础版)
2015/12/08 Javascript
基于vue2.0+vuex+localStorage开发的本地记事本示例
2017/02/28 Javascript
jQuery Validate 无法验证 chosen-select元素的解决方法
2017/05/17 jQuery
jQuery Jsonp跨域模拟搜索引擎
2017/06/17 jQuery
vuejs使用递归组件实现树形目录的方法
2017/09/30 Javascript
Node.js使用Angular简单示例
2018/05/11 Javascript
node错误处理与日志记录的实现
2018/12/24 Javascript
详解写好JS条件语句的5条守则
2019/02/28 Javascript
JS+HTML5本地存储Localstorage实现注册登录及验证功能示例
2020/02/10 Javascript
vue-cli3单页构建大型项目方案
2020/04/07 Javascript
[01:09:16]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第一场 1月25日
2021/03/11 DOTA
编写自定义的Django模板加载器的简单示例
2015/07/21 Python
Python设计模式之外观模式实例详解
2019/01/17 Python
python实现感知机线性分类模型示例代码
2019/06/02 Python
PYTHON绘制雷达图代码实例
2019/10/15 Python
如何打包Python Web项目实现免安装一键启动的方法
2020/05/21 Python
使用python将微信image下.dat文件解密为.png的方法
2020/11/30 Python
Python 利用argparse模块实现脚本命令行参数解析
2020/12/28 Python
CSS3动画之流彩文字效果+图片模糊效果+边框伸展效果实现代码合集
2017/08/18 HTML / CSS
会计专业的自荐信
2013/12/12 职场文书
2014年庆祝国庆65周年演讲稿
2014/09/21 职场文书
专题组织生活会思想汇报
2014/10/01 职场文书
2015年度校学生会工作总结报告
2015/05/23 职场文书