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
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
Apr 13 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
Dec 25 PHP
php处理restful请求的路由类分享
Feb 27 PHP
PHP 面向对象程序设计(oop)学习笔记 (二) - 静态变量的属性和方法及延迟绑定
Jun 12 PHP
php数组索引的Key加引号和不加引号的区别
Aug 19 PHP
ThinkPHP的MVC开发机制实例解析
Aug 23 PHP
FastCGI 进程意外退出造成500错误
Jul 26 PHP
基于PHP实现假装商品限时抢购繁忙的效果
Oct 16 PHP
Yii数据读取与跳转参数传递用法实例分析
Jul 12 PHP
PHP实现长轮询消息实时推送功能代码实例讲解
Feb 26 PHP
PHP 技巧 * SVG 保存为图片(分享图生成)
Apr 02 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判断页面是否是微信打开的示例(微信打开网页)
2014/04/25 PHP
CMS中PHP判断系统是否已经安装的方法示例
2014/07/26 PHP
php使用cookie保存用户登录的用户名实例
2015/01/26 PHP
PHP等比例压缩图片的实例代码
2018/07/26 PHP
PHP SESSION机制的理解与实例
2019/03/22 PHP
PHP生成随机码的思路与方法实例探索
2019/04/11 PHP
按钮JS复制文本框和表格的代码
2011/04/01 Javascript
div当滚动到页面顶部的时候固定在顶部实例代码
2013/05/27 Javascript
setInterval与clearInterval的使用示例代码
2014/01/28 Javascript
jQuery对象初始化的传参方式
2015/02/26 Javascript
Jquery中Event对象属性小结
2015/02/27 Javascript
分享10个原生JavaScript技巧
2015/04/20 Javascript
AngularJS中的表单简单入门
2016/07/28 Javascript
一篇文章让你彻底弄懂JS的事件冒泡和事件捕获
2017/08/14 Javascript
jQuery实现手势解锁密码特效
2017/08/14 jQuery
Redux 和 Mobx的选择问题:让你不再困惑!
2017/09/18 Javascript
一种angular的方法级的缓存注解(装饰器)
2018/03/13 Javascript
angular异步验证防抖踩坑实录
2019/12/01 Javascript
原生js+ajax分页组件
2020/01/30 Javascript
Python3中多线程编程的队列运作示例
2015/04/16 Python
详解Python中的type()方法的使用
2015/05/21 Python
Python基于动态规划算法计算单词距离
2015/07/25 Python
对于Python中RawString的理解介绍
2016/07/07 Python
pytorch cnn 识别手写的字实现自建图片数据
2018/05/20 Python
Python中循环后使用list.append()数据被覆盖问题的解决
2018/07/01 Python
python爬虫基础教程:requests库(二)代码实例
2019/04/09 Python
用 Django 开发一个 Python Web API的方法步骤
2020/12/03 Python
python中HTMLParser模块知识点总结
2021/01/25 Python
Python中如何定义一个函数
2016/09/06 面试题
南京市纪委监察局整改方案
2014/09/16 职场文书
“四风”问题整改措施和努力方向
2014/09/20 职场文书
基层党员群众路线整改措施及努力方向
2014/10/28 职场文书
小学数学新课改心得体会
2016/01/22 职场文书
2016国庆促销广告语
2016/01/28 职场文书
使用Navicat Premium工具将oracle数据库迁移到MySQL
2021/05/27 Oracle
python使用matplotlib绘制图片时x轴的刻度处理
2021/08/30 Python