php解答:php 怎么实现判断联通还是电信

 所属分类:php教程

 浏览:50次-  评论: 0次-  更新时间:2022-09-21
描述:更多教程资料进入php教程获得。 php实现判断联通还是电信的方法:1、创建一个HTML页面并通过js代码验证手机号码是否正确;2、通过PHP代码“...
更多教程资料进入php教程获得。

php实现判断联通还是电信的方法:1、创建一个HTML页面并通过js代码验证手机号码是否正确;2、通过PHP代码“public function phone_check(){...}”判断号码是联通还是电信即可。

php零基础到就业直播视频课:进入学习
程序员必备接口测试调试工具:立即使用

本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。

php 怎么实现判断联通还是电信?

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

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

移动: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>
<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();
    }

推荐学习:《PHP视频教程》

以上就是php 怎么实现判断联通还是电信的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: php,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!