博客列表 >0626作业2019年06月27日09:39:43

0626作业2019年06月27日09:39:43

Viggo的博客
Viggo的博客原创
2019年06月27日 09:40:54719浏览

利用聚合接口获取手机号码归属地数据。

用到了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;
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议