小编给大家分享一下php如何实现判断联通还是电信,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
php实现判断联通还是电信的方法:1、创建一个HTML页面并通过js代码验证手机号码是否正确;2、通过PHP代码“public function phone_check(){...}”判断号码是联通还是电信即可。
本文操作环境:Windows7系统,PHP7.4版,Dell G3电脑。
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> 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
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如何实现判断联通还是电信”有了一定的了解,如果想了解更多相关知识,欢迎关注编程网行业资讯频道,感谢各位的阅读!