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 Ajax乱码
Apr 09 PHP
php数组函数序列之array_search()- 按元素值返回键名
Nov 04 PHP
ThinkPHP之getField详解
Jun 20 PHP
php中error与exception的区别及应用
Jul 28 PHP
php生成随机数的三种方法
Sep 10 PHP
PHP封装分页函数实现文本分页和数字分页
Oct 23 PHP
PHP动态输出JavaScript代码实例
Feb 12 PHP
PHP SplObjectStorage使用实例
May 12 PHP
php 运算符与表达式详细介绍
Nov 30 PHP
PHP+MariaDB数据库操作基本技巧备忘总结
May 21 PHP
php创建多级目录与级联删除文件的方法示例
Sep 12 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 文件上传类代码
2011/08/06 PHP
PHP实现的交通银行网银在线支付接口ECSHOP插件和使用例子
2014/05/10 PHP
CodeIgniter框架常见用法工作总结
2017/03/16 PHP
解决安装WampServer时提示缺少msvcr110.dll文件的问题
2017/07/09 PHP
javascript事件模型代码
2007/07/01 Javascript
JS性能优化笔记搜索整理
2013/08/21 Javascript
nodejs分页类代码分享
2014/06/17 NodeJs
使用text方法获取Html元素文本信息示例
2014/09/01 Javascript
jQuery实现自定义下拉列表
2015/01/05 Javascript
jQuery中parentsUntil()方法用法实例
2015/01/07 Javascript
Javascript基础教程之while语句
2015/01/18 Javascript
javascript实现二级级联菜单的简单制作
2015/11/19 Javascript
javascript中数组和字符串的方法对比
2016/07/20 Javascript
Bootstrap页面缩小变形的快速解决办法
2017/02/03 Javascript
jQuery实现的简单拖动层示例
2017/02/22 Javascript
vue select选择框数据变化监听方法
2018/08/24 Javascript
浅谈Angular7 项目开发总结
2018/12/19 Javascript
JavaScript indexOf()原理及使用方法详解
2020/07/09 Javascript
vue 避免变量赋值后双向绑定的操作
2020/11/07 Javascript
python pickle 和 shelve模块的用法
2013/09/16 Python
pygame学习笔记(6):完成一个简单的游戏
2015/04/15 Python
Python实现多线程HTTP下载器示例
2017/02/11 Python
python 信息同时输出到控制台与文件的实例讲解
2018/05/11 Python
python编写简易聊天室实现局域网内聊天功能
2018/07/28 Python
python3利用ctypes传入一个字符串类型的列表方法
2019/02/12 Python
python 使用raw socket进行TCP SYN扫描实例
2020/05/05 Python
CSS3实现div从下往上滑入滑出效果示例
2020/04/28 HTML / CSS
Kathmandu新西兰官网:新西兰户外运动品牌
2019/07/27 全球购物
行政总经理岗位职责
2013/12/05 职场文书
应届毕业生应聘自荐信
2013/12/07 职场文书
《木笛》教学反思
2014/03/01 职场文书
银行优秀员工推荐信
2015/03/24 职场文书
2015教师年度工作总结范文
2015/04/07 职场文书
高一化学教学反思
2016/02/22 职场文书
Python实战之实现简易的学生选课系统
2021/05/25 Python