Skip to content

Google API

In this article, you are going to learn that, how to create a distance calculator sort of module which can find distance between two addresses. We are going to use google map API and PHP to accomplish this task.

View Demo

The distance calculator module we are going to develop here is basically an API provided by The Google itself. This API can measure the driving distance between two location as well as Travel Time. You can also measure distance between cities using this module.

The format for origin location and destination location could be one of the following:

  • place name (e.g. Sri Jayawardenapura Kotte, SriLanka)
  • ZIP code (e.g. 10620)
  • latitude/longitude coordinates (e.g. 23.77xxx, 77.30xxx)

to know more about permissible formats please visit Google’s official documentation page.

Find Distance Between two Addresses

Step 1:- Get a google’s API Key from https://developers.google.com/maps/documentation/distance-matrix/get-api-key.

click on GET A KEY button

find distance between two addresses

now click on +create a new project and enter your project name then click on ENABLE API button

distance calculator api

then after you are finally prompted to a popup window containing your API KEY.

calculate distance between two cities

Step 2: source code


<!DOCTYPE html>
<html>
    <body>

        <form action="" method="post">

            <label>Origin:</label> <input type="text" name="o" placeholder="Enter Origin location" required> <br><br>
            <label>Destination:</label> <input type="text" name="d" placeholder="Enter Destination location" required> <br><br>
            <input type="submit" value="Calculate distance & time" name="submit"> <br><br>

        </form>

        <?php
            if(isset($_POST['submit'])){
            $origin = $_POST['o']; $destination = $_POST['d'];
            $api = file_get_contents("https://maps.googleapis.com/maps/api/distancematrix/json?units=imperial&origins=".$origin."&destinations=".$destination."&key=YOUR_API_KEY");
            $data = json_decode($api);
        ?>

            <label><b>Distance: </b></label> <span><?php echo ((int)$data->rows[0]->elements[0]->distance->value / 1000).' Km'; ?></span> <br><br>
            <label><b>Travel Time: </b></label> <span><?php echo $data->rows[0]->elements[0]->duration->text; ?></span> 

        <?php } ?>

    </body>
</html>

replace YOUR_API_KEY with your API KEY (Step 1) in above code.

We have covered find distance between two addresses module in this article.