PHP手机号码归属地查询代码(API接口/mysql)


Posted in PHP onSeptember 04, 2012

首先我们介绍使用自己的数据库查询多个手机号码,那还是建议你拥有一个自己的的手机号码数据库。正常情况下,只是满足一般查询的话,你不需要去购买专业版的手机号码数据库,增加无谓成本。我免费为你提供一个ACCESS数据库,包含17万多条数据,常用的130-139、150-159以及180-189开头手机号码段都在其中,你可以借助数据库工具轻松地将它转换成MYSQL或其它版本数据库

最新手机号码数据库下载地址:http://xiazai.3water.com/201209/yuanma/phone-number-database-3water.rar

PHP+MYSQL手机号码归属地查询实现方法

通过上面的介绍,我们已经有了自己的MYSQL数据表。这个表结构很简单:ID(序号),code(区号),num(手机号码段),cardtype(手机卡类型),city(手机号码归属地)。注意,这个表存储数据量很大,应当根据你的sql查询语句,建立合适的索引字段,以提高查询效率。

1)获取手机号码归属地,我们只需要通过判断手机号码段归属地即可。主要通过以下函数实现,其中GetAlabNum、cn_substr、str_replace都是字符串操作函数,$dsql是数据库操作类。

function GetTelphone($tel) 
{ 
global $city,$dsql; 
if(isset($tel)) $tel = GetAlabNum(trim($tel));//GetAlabNum函数用于替换全角数字,将可能存在的非法手机号码转换为数字;trim去除多余空格。 
else return false; 
if(strlen($tel) < 7) return false; 
$tel = cn_substr($tel, 11);//先截取11个字符,防止是多个手机号码 
//if(!is_numeric($tel)) return false; 
if(cn_substr($tel, 1) == "0")//判断手机号码是否以0开头,这种情况可能会是座机号以0开头 
{ 
if(cn_substr($tel, 2) == "01" || cn_substr($tel, 2) == "02") $tel = cn_substr($tel, 3);//3位区号 
else $tel = cn_substr($tel, 4); 
$row = $dsql->GetOne(" Select code,city as dd from `#@__tel` where code='$tel' group by code "); 
} 
else 
{ 
$tel = cn_substr($tel, 7); 
$row = $dsql->GetOne(" Select num,city as dd from `#@__tel` where num='$tel' "); 
} 
$city = $row['dd']; 
if($city) 
{ 
$city = str_replace("省", "-", $city); 
$city = str_replace("市", "", $city); 
$city = "<br /><font color="green">[".$city."]</font>"; 
return $city; 
} 
}

api实现方法,这里不需要自己的数据库但有限制了
主要使用curl实现,需要开启php对curl的支持。
<?php 
header(“Content-Type:text/html;charset=utf-8″); 
if (isset($_GET['number'])) { 
$url = ‘http://webservice.webxml.com.cn/WebServices/MobileCodeWS.asmx/getMobileCodeInfo'; 
$number = $_GET['number']; 
$ch = curl_init(); 
curl_setopt($ch, CURLOPT_URL, $url); 
curl_setopt($ch, CURLOPT_POST, true); 
curl_setopt($ch, CURLOPT_POSTFIELDS, “mobileCode={$number}&userId=”); 
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); 
$data = curl_exec($ch); 
curl_close($ch); 
$data = simplexml_load_string($data); 
if (strpos($data, ‘http://')) { 
echo ‘手机号码格式错误!'; 
} else { 
echo $data; 
} 
} 
?> 
<form action=”mobile.php” method=”get”> 
手机号码: <input type=”text” name=”number” /> <input type=”submit” value=”提交” /> 
</form>

与php mysql手机号码归属地查询这个会慢很多,毕竟要通过第三方法数据。
PHP 相关文章推荐
使用无限生命期Session的方法
Oct 09 PHP
php tp验证表单与自动填充函数代码
Feb 22 PHP
做了CDN获取用户真实IP的函数代码(PHP与Asp设置方式)
Apr 13 PHP
thinkphp3.2.2前后台公用类架构问题分析
Nov 25 PHP
php语言的7种基本的排序方法
Dec 28 PHP
PHP类和对象相关系统函数与运算符小结
Sep 28 PHP
浅谈PHP命令执行php文件需要注意的问题
Dec 16 PHP
php如何修改SESSION的生存存储时间的实例代码
Jul 05 PHP
Yii2.0框架实现带分页的多条件搜索功能示例
Feb 20 PHP
定位地理位置PHP判断员工打卡签到经纬度是否在打卡之内
May 23 PHP
Laravel 使用查询构造器配合原生sql语句查询的例子
Oct 12 PHP
PHP设计模式入门之迭代器模式原理与实现方法分析
Apr 26 PHP
PHP获取用户的浏览器与操作系统信息的代码
Sep 04 #PHP
PHP中根据IP地址判断城市实现城市切换或跳转代码
Sep 04 #PHP
PHP中“简单工厂模式”实例代码讲解
Sep 04 #PHP
通过php快速统计某个数据库中每张表的数据量
Sep 04 #PHP
比较discuz和ecshop的截取字符串函数php版
Sep 03 #PHP
Windows下部署Apache+PHP+MySQL运行环境实战
Aug 31 #PHP
关于UEditor编辑器远程图片上传失败的解决办法
Aug 31 #PHP
You might like
桌面中心(二)数据库写入
2006/10/09 PHP
php面向对象全攻略 (十五) 多态的应用
2009/09/30 PHP
php获取$_POST同名参数数组的实现介绍
2013/06/30 PHP
php数组转成json格式的方法
2015/03/09 PHP
Swoole-1.7.22 版本已发布,修复PHP7相关问题
2015/12/31 PHP
php制作基于xml的RSS订阅源功能示例
2017/02/08 PHP
PHP生成指定范围内的N个不重复的随机数
2019/03/18 PHP
PHP读取文件或采集时解决中文乱码
2021/03/09 PHP
js弹出的对话窗口永远保持居中显示
2012/12/15 Javascript
Javascript 检测键盘按键信息及键码值对应介绍
2013/01/03 Javascript
javascript 实现 秒杀,团购 倒计时展示的记录 分享
2013/07/12 Javascript
js对文章内容进行分页示例代码
2014/03/05 Javascript
JavaScript函数参数使用带参数名的方式赋值传入的方法
2015/03/19 Javascript
JS 插件dropload下拉刷新、上拉加载使用小结
2017/04/13 Javascript
如何理解Vue的作用域插槽的实现原理
2017/08/19 Javascript
Vue2.0实现组件数据的双向绑定问题
2018/03/06 Javascript
Bootbox将后台JSON数据填充Form表单的实例代码
2018/09/10 Javascript
浅谈 Webpack 如何处理图片(开发、打包、优化)
2019/05/15 Javascript
前端开发基础javaScript的六大作用
2020/08/06 Javascript
Vue 列表页带参数进详情页的操作(router-link)
2020/11/13 Javascript
video.js添加自定义组件的方法
2020/12/09 Javascript
布同 统计英文单词的个数的python代码
2011/03/13 Python
Python后台管理员管理前台会员信息的讲解
2019/01/28 Python
Python实现简单的列表冒泡排序和反转列表操作示例
2019/07/10 Python
python加密解密库cryptography使用openSSL生成的密匙加密解密
2020/02/11 Python
解决pyCharm中 module 调用失败的问题
2020/02/12 Python
Python2及Python3如何实现兼容切换
2020/09/01 Python
医药个人求职信范文
2014/01/29 职场文书
品质管理部岗位职责范文
2014/03/01 职场文书
学校个人对照检查材料
2014/08/26 职场文书
购房委托书范本
2014/09/18 职场文书
2014年学生资助工作总结
2014/12/18 职场文书
校长个人总结
2015/03/03 职场文书
2015年社区居委会工作总结
2015/05/18 职场文书
2016年大学迎新工作总结
2015/10/14 职场文书
2016感恩父亲节主题广播稿
2015/12/18 职场文书