利用聚合接口获取手机号码归属地数据。
用到了php的curl函数,调用聚合接口的地址。
<?php $url = "http://apis.juhe.cn/mobile/get"; $params = array( "phone" => "15312747111", "key" => "d7e4db53e3d95d6199a977f18ceee0ea" ); $paramstring = http_build_query($params); //把数组转换成get参数 $content = juheCurl($url, $paramstring); //调用curl $result = json_decode($content, true); //转换成php数组 //var_dump($result); echo '你的电话是:'. $params['phone'].'<br>'; echo '你的邮编是:'. $result['result']['zip'].'<br>'; echo '你的区号是:'. $result['result']['areacode'].'<br>'; echo '你的归属地:'. $result['result']['province'].$result['result']['city'].'<br>'; echo '你的邮编是:'. $result['result']['zip'].'<br>'; echo '你的运营商:'. $result['result']['company'].'<br>'; function juheCurl($url, $params = false, $ispost = 0){ $httpInfo = array(); $ch = curl_init(); curl_setopt($ch, CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_1); // 默认值,让 cURL 自己判断使用哪个版本。 (强制使用 HTTP/1.1)。 curl_setopt($ch, CURLOPT_USERAGENT, 'JuheData'); // 在HTTP请求中包含一个"User-Agent: "头的字符串。 curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 60); // 在尝试连接时等待的秒数。设置为0,则无限等待。 curl_setopt($ch, CURLOPT_TIMEOUT, 60); // 设置超时限制防止死循环 curl_setopt($ch, CURLOPT_RETURNTRANSFER, true); // 要求结果保存到字符串中还是输出到屏幕上 curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true); // 爬取重定向页面 if ($ispost) { curl_setopt($ch, CURLOPT_POST, true); // 发送一个常规的Post请求 curl_setopt($ch, CURLOPT_POSTFIELDS, $params); // Post提交的数据包 curl_setopt($ch, CURLOPT_URL, $url); // 设置URL } else { // GET请求,组装url if ($params) { curl_setopt($ch, CURLOPT_URL, $url.'?'.$params); } else { curl_setopt($ch, CURLOPT_URL, $url); } } $response = curl_exec($ch); // 运行cURL,请求URL,把结果复制给变量 if ($response === FALSE) { echo "cURL Error: " . curl_error($ch); //捕抓异常 return false; } $httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE); // 获取一个cURL连接资源句柄的信息 $httpInfo = array_merge($httpInfo, curl_getinfo($ch)); curl_close($ch); return $response; }
点击 "运行实例" 按钮查看在线实例