手机号码归属地查询这个概念大家都不陌生吧!像我们在百度搜索框中输入一个正确的手机号码,点击搜索,就会显示这个手机号码的归属地和卡类型,非常方便。今天要为大家说的就是利用PHP+MYSQL的方法来实现手机号码归属地的查询。网上也有很多方法,大多是通过一些提供在线接口的网站或是PHP+纯文本的方法来实现的。
如果只是查询单个手机号码,那推荐你用提供国内手机号码段归属地数据的网站接口来做,简单实现,也不浪费你服务器资源。比如MobileCodeWS就是不错的选择。
如果是同时或是循环查询多个手机号码,那还是建议你拥有一个自己的的手机号码数据库。正常情况下,只是满足一般查询的话,你不需要去购买专业版的手机号码数据库,增加无谓成本。我免费为你提供一个ACCESS数据库,包含17万多条数据,常用的130-139、150-159以及180-189开头手机号码段都在其中,你可以借助数据库工具轻松地将它转换成MYSQL或其它版本数据库。
进入正题,这两天,应老板要求,需要在PHP+MYSQL开发的一个管理系统中实现以下功能:
1)显示用户的电话号码(手机号或座机号)归属地,便于回访;
2)后台做一个手机号码段添加的功能,便于更新手机号码库。
PHP+MYSQL手机号码归属地查询实现方法
通过上面的介绍,我们已经有了自己的MYSQL数据表。这个表结构很简单:ID(序号),code(区号),num(手机号码段),cardtype(手机卡类型),city(手机号码归属地)。注意,这个表存储数据量很大,应当根据你的sql查询语句,建立合适的索引字段,以提高查询效率。
1)获取手机号码归属地,我们只需要通过判断手机号码段归属地即可。主要通过以下函数实现,其中GetAlabNum、cn_substr、str_replace都是字符串操作函数,$dsql是数据库操作类。
2)添加新的手机号码段功能
这个功能就很简单了吧,只是一个简单的表单提交功能,PHP学习最基本的留言簿就是这么做的,随便DOWN一个来参考下即可,就不详细说明了。
以上就是PHP+MYSQL实现手机号码归属地查询的详细办法,有什么不对的地方欢迎补充、交流。