Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Cara menggunakan PHP untuk menentukan sama ada China Unicom atau China Telecom

Cara menggunakan PHP untuk menentukan sama ada China Unicom atau China Telecom

藏色散人
藏色散人asal
2021-12-10 10:11:431880semak imbas

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

Cara menggunakan PHP untuk menentukan sama ada China Unicom atau China Telecom

本文操作环境: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 = &#39;&#39;;
    function mobile_check(phone){
        if(phone.length !== 11){
           alert(&#39;未检测到正确的手机号码&#39;);
           return false;
        }
        $.ajax({
            url:"__CONTROLLER__/phone_check",
            async:false,
            dataType:&#39;json&#39;,
            type:&#39;post&#39;,
            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(&#39;phone&#39;);
            $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(&#39;中国移动&#39;);  //0
            }else if(preg_match($isChinaUnion, $phone)){
                $this->ajaxReturn(&#39;中国联通&#39;);  //1
            }else if(preg_match($isChinaTelcom, $phone)){
                $this->ajaxReturn(&#39;中国电信&#39;);  //2
            }else{
                $this->ajaxReturn(&#39;未知&#39;);      //3
            }
        }
        $this->display();
    }

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci Cara menggunakan PHP untuk menentukan sama ada China Unicom atau China Telecom. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn