1. 程式人生 > >記 判斷手機號運營商function

記 判斷手機號運營商function

/*
     移動: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衛通)
     */
    /**
     *   手機服務商函式 getphonetype
     *@author by @tianxiao
     *@param  string  $phone   手機號字串
     *@return  unsignedint   0中國移動,1中國聯通  2中國電信  3未知
     **/
    function getphonetype($phone){
        $phone = trim($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)){
            return 0;
        }elseif(preg_match($isChinaUnion, $phone)){
            return 1;
        }elseif(preg_match($isChinaTelcom, $phone)){
            return 2;
        }else{
            return 3;
        }
    }