PHP怎么查询手机号码归属地?
基于PHP的手机号码归属地查询
手机号码(段)归属地查询
接口请求Key,可以通过https://www.juhe.cn/docs/api/id/11?s=cpphpcn免费申请开通
¥appkey = "*********************";
//根据手机号码或手机号码的前7位,查询手机号码归属地信息,如省份 、城市、运营商等。
¥url = "http://apis.juhe.cn/mobile/get";
¥params = [
"phone" => "1891234",//手机号码或手机号码的前7位
"key" => ¥appkey,//应用APPKEY(应用详细页查询)
];
¥paramstring = http_build_query(¥params);
¥content = juheHttpRequest(¥url, ¥paramstring, 1);
¥result = json_decode(¥content, true);
if (¥result) {
if (¥result['error_code'] == 0) {
echo "省份:{¥result['result']['province']}" . PHP_EOL;
echo "城市:{¥result['result']['city']}" . PHP_EOL;
echo "区号:{¥result['result']['areacode']}" . PHP_EOL;
echo "运营商:{¥result['result']['company']}" . PHP_EOL;
} else {
echo "{¥result['error_code']}:{¥result['reason']}" . PHP_EOL;
}
} else {
echo "请求失败";
}
/**
* 请求接口返回内容
* @param string ¥url [请求的URL地址]
* @param string ¥params [请求的参数]
* @param int ¥ipost [是否采用POST形式]
* @return string
*/
function juheHttpRequest(¥url, ¥params = false, ¥ispost = 0)
{
¥httpInfo = array();
¥ch = curl_init();
curl_setopt(¥ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1);
curl_setopt(¥ch, CURLOPT_USERAGENT, 'JuheData');
curl_setopt(¥ch, CURLOPT_CONNECTTIMEOUT, 3);
curl_setopt(¥ch, CURLOPT_TIMEOUT, 5);
curl_setopt(¥ch, CURLOPT_RETURNTRANSFER, true);
curl_setopt(¥ch, CURLOPT_FOLLOWLOCATION, true);
if (¥ispost) {
curl_setopt(¥ch, CURLOPT_POST, true);
curl_setopt(¥ch, CURLOPT_POSTFIELDS, ¥params);
curl_setopt(¥ch, CURLOPT_URL, ¥url);
} else {
if (¥params) {
curl_setopt(¥ch, CURLOPT_URL, ¥url . '?' . ¥params);
} else {
curl_setopt(¥ch, CURLOPT_URL, ¥url);
}
}
¥response = curl_exec(¥ch);
if (¥response === FALSE) {
//echo "cURL Error: " . curl_error(¥ch);
return false;
}
¥httpCode = curl_getinfo(¥ch, CURLINFO_HTTP_CODE);
¥httpInfo = array_merge(¥httpInfo, curl_getinfo(¥ch));
curl_close(¥ch);
return ¥response;
}