PHP查詢IP位址歸屬地的步驟:1、開通IP位址歸屬地介面服務,取得介面請求Key;2、呼叫介面API發出請求,根據查詢的IP位址,查詢該IP所屬的區域;3、自訂juheHttpRequest()取得請求介面回傳的內容即可。
本教學操作環境:windows7系統、PHP8.1版、DELL G3電腦
怎麼查詢IP位址歸屬地?以下這篇文章就來跟大家介紹一下使用PHP查詢IP位址歸屬地的方法。
PHP查詢IP位址歸屬地的步驟:
#1、開通介面
P地址歸屬地接口服務使用的聚合資料提供的免費接口,可以透過https://www.juhe.cn/docs/api/id/1?s=cpphpcn
註冊並開通。
2、根據查詢的IP位址,查詢該IP所屬的區域
// 接口请求Key,可以通过https://www.juhe.cn/docs/api/id/1免费申请开通 $appkey = "*********************"; //根据查询的IP地址,查询该IP所属的区域 $url = "http://apis.juhe.cn/ip/ipNew"; $params = [ "ip" => "112.112.11.11",//需要查询的IP地址或域名 "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']['Country']}" . PHP_EOL; echo "省份:{$result['result']['Province']}" . PHP_EOL; echo "城市:{$result['result']['City']}" . PHP_EOL; echo "运营商:{$result['result']['Isp']}" . PHP_EOL; } else { echo "{$result['error_code']}:{$result['reason']}" . PHP_EOL; } } else { echo "请求失败"; }
3、請求介面回傳內容
/** * 请求接口返回内容 * @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; }
推薦學習:《PHP影片教學》
以上是怎麼使用PHP查詢IP位址歸屬地的詳細內容。更多資訊請關注PHP中文網其他相關文章!