Get Country, City Name, latitude, longitude from IP address using PHP

Get Country, City Name, latitude, longitude from IP address using PHP

Get Country, Region, City name, latitude and longitude from IP address in PHP; In this tutorial, you will learn how to get location, country name, city name, state or region name, latitude, longitude, country code, time zone, etc, from IP address in PHP.

This tutorial will use geolocation API to get the user’s location information like country name, city name, state name, latitude, longitude etc.

There are various info is available about geolocation in API response. Some of the most useful location details are:

  • Country Name (country_name)
  • Country Code (country_code)
  • Region Code (region_code)
  • Region Name (region_name)
  • City (city)
  • Zip Code (zip_code)
  • Latitude (latitude)
  • Longitude (longitude)
  • Time Zone (time_zone)

How to Get Location(Country, city Name), Latitude, Longitude from IP address in PHP

Use the following steps to get location, country name, city name, state or region name, latitude, longitude, country code, time zone, etc, from IP address in PHP:

  • Step 1 – Include API in PHP File
  • Step 2 – Create Index.php File

Step 1 – Include API in PHP File

Include this API in your PHP file. Also, you need to pass the IP address in it.

You can see the following:

http://www.geoplugin.net/json.gp?ip=" . $ip

Step 2 – Create Index.php File

Next step, you need to create one PHP file and update the below code into your index.php file to get location, country name, city name, state or region name, latitude, longitude, country code, time zone, etc, from IP address in PHP:

<!DOCTYPE html>
<html>
<body>


<?php

//static ip address
$ip = "52.25.109.230"; 

//Get IP Address of User in PHP
//$ip = $_SERVER['REMOTE_ADDR']; 

//call api
$url = file_get_contents("http://www.geoplugin.net/json.gp?ip=" . $ip);

//decode json data
$getInfo = json_decode($url); 

print_r($getInfo);
    
//print the array to see the fields if you wish.

echo "<table border='1' width='50%' align='center'><tr><td>COUNTRY:</td><td>";
echo $getInfo->geoplugin_countryName;
echo "</td></tr><tr><td>CITY:</td><td>";
echo $getInfo->geoplugin_city;
echo "</td></tr><tr><td>STATE OR REGION:</td><td>";
echo $getInfo->geoplugin_region;
echo "</td></tr><tr><td>IP ADDRESS:</td><td>";
echo $getInfo->geoplugin_request;
echo "</td></tr><tr><td>COUNTRY CODE:</td><td>";
echo $getInfo->geoplugin_countryCode;
echo "</td></tr><tr><td>LATITUTE:</td><td>";
echo $getInfo->geoplugin_latitude;
echo "</td></tr><tr><td>LONGITUDE:</td><td>";
echo $getInfo->geoplugin_longitude;
echo "</td></tr><tr><td>TIMEZONE:</td><td>";
echo $getInfo->geoplugin_timezone;
echo "</td></tr><tr></table>";
    
?>

</body>
</html>

The above PHP script call the API with IP address and returns the user’s City, State, Country, Country code, Latitude, Longitude, timezone, etc.

Recommended PHP Tutorials

AuthorAdmin

My name is Devendra Dode. I am a full-stack developer, entrepreneur, and owner of Tutsmake.com. I like writing tutorials and tips that can help other developers. I share tutorials of PHP, Python, Javascript, JQuery, Laravel, Livewire, Codeigniter, Node JS, Express JS, Vue JS, Angular JS, React Js, MySQL, MongoDB, REST APIs, Windows, Xampp, Linux, Ubuntu, Amazon AWS, Composer, SEO, WordPress, SSL and Bootstrap from a starting stage. As well as demo example.

One reply to Get Country, City Name, latitude, longitude from IP address using PHP

  1. nice tuts.

Leave a Reply

Your email address will not be published. Required fields are marked *