道理很简单,知道手机号规则 进行正则判断就可以
移动: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(); }
以上就是全部的实现代码了,需要的朋友可以参考一下
© 版权声明
THE END
暂无评论内容