A PHP5 library implements Geocoding and Reverse geocoding through The Google Maps Geocoding API.
Geocoding is the process of converting addresses (like "1600 Amphitheatre Parkway, Mountain View, CA") into geographic coordinates (like latitude 37.423021 and longitude -122.083739). Reverse geocoding is the process of converting geographic coordinates into a human-readable address.
To use the Google Maps Geocoding API, you need an API key. To acquire an API key follow the instructions.
try {
$result = (new GMapsGeocode('YOUR_GOOGLE_API'))
->setAddress('Helsinki')
// ->setRegion('FI')
->setComponents(array(
'route' => 'Annegatan',
'administrative_area' => 'Helsinki',
'country' => 'Finland'
))
->search();
print_r($result);
} catch (GMapsException $e) {
printf('Error (%d): %s', $e->getCode(), $e->getMessage());
}
Required method are setAddress
or setComponents
in a geocoding request and setRegion
is optional.
Official documentation contains more about Component Filtering.
try {
$geo = (new GMapsGeocodeReverse('YOUR_GOOGLE_API'))
->setLatLng('40.714224', '-73.961452')
// ->setPlaceId('ChIJd8BlQ2BZwokRAFUEcm_qrcA')
->search();
print_r($result);
} catch (GMapsException $e) {
printf('Error (%d): %s', $e->getCode(), $e->getMessage());
}
Required method are setLatLng
or setPlaceId
in a reverse geocoding request.
$ composer require dotzero/gmaps-geocode
Clone the project using:
$ git clone https://github.com/dotzero/gmaps-geocode-php/
and include the source files with:
require_once("gmaps-geocode-php/src/GMapsException.php");
require_once("gmaps-geocode-php/src/GMapsGeocodeBase.php");
require_once("gmaps-geocode-php/src/GMapsGeocode.php");
require_once("gmaps-geocode-php/src/GMapsGeocodeReverse.php");
First install the dependencies, and after you can run:
GOOGLE_API=YOUR_GOOGLE_API vendor/bin/phpunit
Licensed under the MIT license: http://www.opensource.org/licenses/mit-license.php