这篇文章主要介绍了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 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();
}
以上就是全部的实现代码了,需要的朋友可以参考一下
编程基础网
本文标题为:PHP根据手机号判断运营商(详细介绍附代码)
基础教程推荐
猜你喜欢
- CentOS 7 编译安装PHP7 2023-09-02
- PHP如何将头像图片转换圆形图片 2023-08-30
- 解析PHP中Exception异常机制 2023-06-13
- PHP5.0 TIDY_PARSE_FILE缓冲区溢出漏洞的解决方案 2022-11-26
- PHP中的输出缓冲控制详解 2023-06-03
- 在laravel中实现事务回滚的方法 2023-02-22
- PHP树形结构tree类用法示例 2022-12-15
- PHP设计模式之状态模式定义与用法详解 2022-10-12
- php+mysql+ajax 局部刷新点赞/取消点赞功能(每个账号只点赞一次) 2023-04-24
- php fread函数使用方法总结 2023-01-19
