200字范文,内容丰富有趣,生活中的好帮手!
200字范文 > php mysql 手机归属地_PHP 手机号码归属地查询代码 (API 接口 / mysql)

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

时间:2020-02-20 06:01:13

相关推荐

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

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

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

最新手机号码数据库下载地址: /09/yuanma/phone-number-database-jb51.rar

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

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

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

代码如下:functionGetTelphone($tel)

{

global$city,$dsql;

if(isset($tel))$tel=GetAlabNum(trim($tel));//GetAlabNum 函数用于替换全角数字, 将可能存在的非法手机号码转换为数字; trim 去除多余空格

elsereturnfalse;

if(strlen($tel)<7)returnfalse;

$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 `z_tel` where code='$tel'group by code");

}

else

{

$tel=cn_substr($tel,7);

$row=$dsql->GetOne("Select num,city as dd from `z_tel` where num='$tel' ");

}

$city=$row['dd'];

if($city)

{

$city=str_replace("省","-",$city);

$city=str_replace("市","",$city);

$city="[".$city."]";

return$city;

}

}

api 实现方法, 这里不需要自己的数据库但有限制了

主要使用 curl 实现, 需要开启 php 对 curl 的支持

代码如下:header(Content-Type:text/;charset=utf-8);

if(isset($_GET['number'])){

$url=/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;

}

}?>

手机号码:

与 php mysql 手机号码归属地查询这个会慢很多, 毕竟要通过第三方法数据

来源: /detail/php-42289a3925.html

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。