PHP Classes

File: README.md

Recommend this page to a friend!
  Classes of Thiago Przyczynski   Here PHP Geocoder   README.md   Download  
File: README.md
Role: Documentation
Content typex: text/markdown
Description: Documentation
Class: Here PHP Geocoder
Get the location of an address using the Here API
Author: By
Last change: Unit tests and Reverse Geocode
Avoiding production with the testing tool
Enhancements and documentation plus constructed a testing tool for sample data
Date: 3 months ago
Size: 2,637 bytes
 

Contents

Class file image Download

HERE GEOCODER

A Laravel package to work with Here Maps API.

Installing

composer require thiagoprz/here-geocoder

  • Add provider on config/app.php 
    'providers' => [
    ...
    Thiagoprz\HereGeocoder\HereGeocoderServiceProvider::class,
    ...
    ]
    
  • Add three enviromental variables on your projects .env file (or on your system variables): - HERE_API_ID for geolocation services - HERE_APP_CODE for geolocation services - HERE_API_KEY for reverse geolocation service

Register on https://developer.here.com/?create=Freemium-Basic&keepState=true&step=account and create a project.

Features

  • Address (and places) Geocoding
$geocoder = new HereGeocoder();
$geocoder->geocode('Champ de Mars, 5 Avenue Anatole France, 75007 Paris'); 
// Returns
{"Response":{"MetaInfo":{"Timestamp":"2019-06-19T11:58:23.882+0000"},"View":[{"_type":"SearchResultsViewType","ViewId":0,"Result":[{"Relevance":0.72,"MatchLevel":"street","MatchQuality":{"Country":1,"City":1,"Street":[1],"PostalCode":1},"Location":{"LocationId":"NT_FuYSIyQ21HcHCtmZuSx09B","LocationType":"point","DisplayPosition":{"Latitude":48.85478,"Longitude":2.30038},"NavigationPosition":[{"Latitude":48.85478,"Longitude":2.30038}],"MapView":{"TopLeft":{"Latitude":48.85798,"Longitude":2.29497},"BottomRight":{"Latitude":48.85317,"Longitude":2.30242}},"Address":{"Label":"Champ-de-Mars, 75007 Paris, France","Country":"FRA","State":"\u00cele-de-France","County":"Paris","City":"Paris","District":"7e Arrondissement","Street":"Champ-de-Mars","PostalCode":"75007","AdditionalData":[{"value":"France","key":"CountryName"},{"value":"\u00cele-de-France","key":"StateName"},{"value":"Paris","key":"CountyName"}]}}}]}]}} 

Testing Tool

To make it easier Here Geocoder comes with a tool for testing the geocode functionality. After installation access http://YOU_PROJECT_LOCAL_URL/here_geocoder and you will be able to test the geocoding feature without having to code.

The testing tool only will be available when APP_ENV is not running on production (prod or production).

Roadmap

  • Unit Tests
  • Add batch geolocation support
  • Add batch places support
  • Add Facade for simpler access to geocode and future methods

For more information about geocode API check the Here API documentation: https://developer.here.com/documentation/geocoder/topics/what-is.html

The HERE API and HERE are trademarks of HERE Global B.V.