首页 > 开发 > PHP > 正文

PHP根据手机号判断运营商(详细介绍附代码)

2024-05-04 22:44:23
字体:
来源:转载
供稿:网友

道理很简单,知道手机号规则 进行正则判断就可以

移动: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卫通)

HTML页面

<!DOCTYPE html><html lang="en"><head>  <title>手机号归属</title></head><body>  <input type="text" onblur="mobile_check($(this).val())" ></body></html><script type="text/javascript" src="__ROOT__/Public/admin/lib/jquery/1.9.1/jquery.min.js"></script>  //修改为自己的路径<script>  /*   移动: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卫通)   */  var phone = '';  function mobile_check(phone){    if(phone.length !== 11){      alert('未检测到正确的手机号码');      return false;    }    $.ajax({      url:"__CONTROLLER__/phone_check",      async:false,      dataType:'json',      type:'post',      data:{phone:phone},      success:function(msg){        alert(msg);      }    });  }</script>

controller控制代码

/*  *@param string $phone  手机号字符串  *@return 0中国移动,1中国联通 2中国电信 3未知  */  public function phone_check(){    if(IS_POST){      $phone = I('phone');      $isChinaMobile = "/^134[0-8]/d{7}$|^(?:13[5-9]|147|15[0-27-9]|178|18[2-478])/d{8}$/"; //移动方面最新答复      $isChinaUnion = "/^(?:13[0-2]|145|15[56]|176|18[56])/d{8}$/"; //向联通微博确认并未回复      $isChinaTelcom = "/^(?:133|153|177|173|18[019])/d{8}$/"; //1349号段 电信方面没给出答复,视作不存在      // $isOtherTelphone = "/^170([059])//d{7}$/";//其他运营商      if(preg_match($isChinaMobile, $phone)){        $this->ajaxReturn('中国移动'); //0      }else if(preg_match($isChinaUnion, $phone)){        $this->ajaxReturn('中国联通'); //1      }else if(preg_match($isChinaTelcom, $phone)){        $this->ajaxReturn('中国电信'); //2      }else{        $this->ajaxReturn('未知');   //3      }    }    $this->display();  }

以上就是全部的实现代码了,需要的朋友可以参考一下

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表