무료 IP 지리 정보 서비스인 freegeoip.app를 사용하여 IP 주소로 국가 코드, 국가 이름, 지역 코드, 지역 이름, 도시, 위도 및 경도, 타임존 정보를 가져올수 있습니다.
아래 코드는 PHP를 이용한 코드입니다.
<?php
function get_ip_geo($ip_address) {
$url = "https://freegeoip.app/json/$ip_address";
$response = file_get_contents($url);
$data = json_decode($response, true);
$country_code = $data["country_code"];
$country_name = $data["country_name"];
$city = $data["city"];
$latitude = $data["latitude"];
$longitude = $data["longitude"];
$time_zone = $data["time_zone"];
return array($country, $latitude, $longitude);
}
$ip_address = "8.8.8.8"; // 예시 IP 주소, 실제로 사용할 IP 주소로 바꿔주세요
list($country, $latitude, $longitude) = get_ip_geo($ip_address);
echo "Country: $country\n";
echo "Latitude: $latitude\n";
echo "Longitude: $longitude\n";
echo "Time zone: $time_zone\n";
?>
아래는 Python을 사용하여 예시를 보여드리겠습니다. 다음 코드는 requests 라이브러리를 사용하여 freegeoip.app API를 호출하여 IP 주소의 국가, 위도 및 경도를 가져오는 방법을 보여줍니다:
import requests
def get_ip_geo(ip_address):
url = f"https://freegeoip.app/json/{ip_address}"
response = requests.get(url)
data = response.json()
country = data.get("country_name")
latitude = data.get("latitude")
longitude = data.get("longitude")
return country, latitude, longitude
ip_address = "8.8.8.8" # 예시 IP 주소, 실제로 사용할 IP 주소로 바꿔주세요
country, latitude, longitude = get_ip_geo(ip_address)
print("Country:", country)
print("Latitude:", latitude)
print("Longitude:", longitude)
'Web > PHP' 카테고리의 다른 글
CKEditor5 클립보드 이미지 업로드 하는 방법(Paste, Ctrl+v) (0) | 2024.03.07 |
---|---|
PHP) 주어진 시작일자와 종료일자 사이의 남은 일 수를 계산하는 방법 (0) | 2024.02.02 |
PHP) 그누보드에서 스마트에디터/ckeditor 에 링크를 입력할 경우 target 값 없이 입력이 될 경우 (0) | 2024.02.02 |
PHP] 사이트맵(sitemap.xml) 생성하는 소스 (0) | 2021.12.02 |
PHP] 네이버맵 API를 이용한 좌표로 주소구하기 (0) | 2021.11.05 |