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 相关文章推荐
PHP 程序员的调试技术小结
Nov 15 PHP
php file_exists 检查文件或目录是否存在的函数
May 10 PHP
PHP把JPEG图片转换成Progressive JPEG的方法
Jun 30 PHP
thinkphp模板输出技巧汇总
Nov 24 PHP
php不使用copy()函数复制文件的方法
Mar 13 PHP
php查询mysql数据库并将结果保存到数组的方法
Mar 18 PHP
PHP计算指定日期所在周的开始和结束日期的方法
Mar 24 PHP
PHP实现事件机制实例分析
Jun 26 PHP
PHP二分查找算法示例【递归与非递归方法】
Sep 29 PHP
PHP+jquery+CSS制作头像登录窗(仿QQ登陆)
Oct 20 PHP
PHP基于rabbitmq操作类的生产者和消费者功能示例
Jun 16 PHP
TP5框架实现的数据库备份功能示例
Apr 05 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
PHP 组件化编程技巧
2009/06/06 PHP
DOMAssitant最新版 DOMAssistant 2.5发布
2007/12/25 Javascript
学习ExtJS table布局
2009/10/08 Javascript
escape函数解决js中ajax传递中文出现乱码问题
2014/10/30 Javascript
js实现浏览器窗口大小被改变时触发事件的方法
2015/02/02 Javascript
jQuery判断数组是否包含了指定的元素
2015/03/10 Javascript
JavaScript在浏览器标题栏上显示当前日期和时间的方法
2015/03/19 Javascript
贴近用户体验的Jquery日期、时间选择插件
2015/08/19 Javascript
JavaScript的History API使搜索引擎抓取AJAX内容
2015/12/07 Javascript
jQuery插件编写步骤详解
2016/06/03 Javascript
Ajax使用原生态JS验证用户名是否存在
2020/05/26 Javascript
js仿新浪微博消息发布功能
2017/02/17 Javascript
Vue form 表单提交+ajax异步请求+分页效果
2017/04/22 Javascript
Nodejs 复制文件/文件夹的方法
2017/08/24 NodeJs
基于匀速运动的实例讲解(侧边栏,淡入淡出)
2017/10/17 Javascript
JS实现按钮添加背景音乐示例代码
2017/10/17 Javascript
小程序实现新用户判断并跳转激活的方法
2019/05/20 Javascript
微信小程序云开发如何实现数据库自动备份实现
2019/08/16 Javascript
Vue实例的对象参数options的几个常用选项详解
2019/11/08 Javascript
[20:46]Ti4循环赛第三日VG vs DK
2014/07/12 DOTA
[57:22]完美世界DOTA2联赛PWL S2 FTD vs PXG 第二场 11.27
2020/12/01 DOTA
Python解析树及树的遍历
2016/02/03 Python
pandas将numpy数组写入到csv的实例
2018/07/04 Python
Python列表list排列组合操作示例
2018/12/18 Python
Python交互式图形编程的实现
2019/07/25 Python
pycharm 安装JPype的教程
2019/08/08 Python
Python如何输出警告信息
2020/07/30 Python
香港礼品网站:GiftU eshop
2017/09/01 全球购物
护士演讲稿范文
2014/01/05 职场文书
预防传染病方案
2014/06/14 职场文书
班级体育活动总结
2014/07/05 职场文书
检讨书格式范文
2015/05/07 职场文书
辞职信怎么写?你都知道吗?
2019/06/24 职场文书
SQL Server表分区删除详情
2021/10/16 SQL Server
python多次执行绘制条形图
2022/04/20 Python
Java 写一个简单的图书管理系统
2022/04/26 Java/Android