A geolocalização consiste em determinar as coordenadas de um determinado ponto no Globo.
É um conceito relativamente novo, criado em 2009, e se tornou uma grande tendência com a popularização dos dispositivos móveis.
Este processo pode ser implementado por diversos mecanismos tecnológicos. Entre elas, uma das formas convencionais de Geolocalização de uma coordenada no globo é através do IP.
As aplicações e uso do recurso são diversas. Podemos citar: GMaps, Waze, Twitter etc.
A API php-geocoder é agnóstica quanto ao provedor do serviço. Isto significa que você pode escolher o serviço de geolocation mais apropriado para seus requisitos.
Os provedores executam a magia negra da geolocalização para você (falando com as APIs, buscando resultados, tratando erros, etc.) e são altamente configuráveis.
Entre os provedores ou serviços podemos destacar:
Primeiro passo para implementção é instalar as LIBS necessárias utilizando o Composer. Por exemplo se você escolher o Google Maps como provedor:
composer require geocoder-php/google-maps-provider
Após adicionar as bibliotecas necessárias, crie uma classe para definir os métódos responsáveis pelo comportamento.
Nesta classe é método geocodeQuery recebe um endereço como parâmetro. O Endereço deve estar no seguinte formato:
Rua General Bittencourt, 397, Centro, Florianópolis, Brasil.
Quanto mais completo o endereço, maior a precisão das coordenadas. Além disso o método retorna um VO (Value Object) com os seguintes atributos:
Happy Coding! 😀