Battisti – Blog

Tecnologia, Web e um pouco de cultura inútil

battisti On março - 13 - 2010

Essa é uma das primeiras perguntas que alguém faz quando começa a utilizar a API de mapas do google. Bom no meu caso eu queria saber isso NÃO através de JS e sim via PHP!

SE VOCÊ QUER SABER QUAL A LATITUDE DE UM ENDEREÇO CLIQUE AQUI. SE FOR PROGRAMADOR CONTINUE LENDO :)

A versão atual da API de mapas do google e versão 3 e uma coisa muito legal que tem nesta versão  é que agora você não precisa mais gerar aquela famigerada (bonita palavra não) chave de validação que vamos e convenhamos era um porre total!

Outra coisa muito legal é que o google gentilmente disponibilizou na versão 3 um Webservice que dentre outras coisas faz o geocode, que nada mais é do que a partir de um endereço retornar suas características geográficas (não apenas latitude e longitude, vem um montão de coisa).

Ok e como eu uso este Webservice ? Simples pequeno gafanhoto é só passar o endereço via parâmetro na  seguinte URL:

http://maps.google.com/maps/api/geocode/json?address=1600+Amphitheatre+Parkway,+Mountain+View,+CA&sensor=true_or_false

Isso ai vai te retornar um objeto JSON que você vai espetacularmente converter em um PHP Array e zaz e zaz e zaz ali está suas coordenadas!

Bem por hoje é só pessoal!

Poxa battisti mas eu não sei ler a URL via PHP e minha mãe ta doente e eu quero dar um CTRL + C / CTRL + V e hoje é sexta e meu chefe ta me pertubando e tal será que não rola um codiginho! Ta bom ta bom vamos la então, MAS (sempre tem um mas)  eu usei a função url_encode ou seja essa treta tem que estar instalada no seu servidor, se não estive use essa lib aqui!

 

Agora sim com código e tudo é hora de dizer tchau!

Categories: PHP

5 Responses

  1. Ângelo Marafelli disse:

    Battisti, mto bom esse código, parabéns, agora tem só uma coisa.

    Eu consegui pegar os primeiros resultados, mas agora o lat e lng que preciso não consegui, como vou pegar apenas esses dois resultados

  2. battisti disse:

    olha este cara retorna tudo :) ! ai o que vc faz é tratar o retorno do google e mandar pra tua aplicação só o que vc precisa!

  3. Diego disse:

    Cara burro esse Angelo, quer td mastigado, trata a porra do XML vagabundo!

  4. Ricardo disse:

    Battisti boa tarde

    Finalmente consegui achar um cógido legal e fácil, agora se puder me ajudar com um problema, isso se você já passou por isso….

    Quando eu coloco a linha de comando direto no browser (IE, Chrome, etc) funciona perfeitamente (ex: http://maps.google.com/maps/api/geocode/json?address=Rua+Francisco+Glic%C3%A9rio,+910,+VALINHOS,+SP&sensor=false), porém quando executo em .php, num servidor linux / windows, com Apache, ele retorna INVALID_REQUEST. Funciona para alguns endereços e outros não, mas isso somente no meu site, porque direto no browser, funciona normalmente….

    Já passou por isso?

    Obrigado e abs.

  5. Battisti disse:

    Saudações

    Pode ser o teu firewall ou mesmo fopen que está desabilitado no apache!

    Se estiver na tua máquina local pode ser o antivirus te bloqueando!

Leave a Reply