¿cómo consigo ciudades cercanas de una ciudad determinada?
-
09-10-2019 - |
Pregunta
En vista de un radio de 50 km de la ciudad de base i necesidad de encontrar las ciudades cercanas.
Mi script debe estar en PHP ... ¿Hay alguna API para averiguarlo ....
Por favor, por favor ayuda me ...
Gracias ...
Solución
Este es un gran recurso: code.google.com/apis/ maps / articles / phpsqlsearch.html # findnearsql
ciudad Base: Latitud: 37 LNG: -122
SELECT id, ( 6371 * acos( cos( radians(37) ) * cos( radians( lat ) ) * cos( radians( lng ) - radians(-122) ) + sin( radians(37) ) * sin( radians( lat ) ) ) ) AS distance FROM markers HAVING distance < 50 ORDER BY distance LIMIT 0 , 20;
El mismo principio que la solución de "Tricker".
Otros consejos
Me escribió una especie de scripts que el cálculo de las distancias entre las coordenadas. Puede hacerlo cuando se tiene 2 coordenadas:
base :
- latitude
- longitude
city :
- latitude
- longititude
Usted tiene que pasar en las coordenadas geográficas de la ciudad base, entonces usted necesita para enviar un rizo a la Google o Yahoo servidor (depende de qué API geocodificador ¿Quieres que te) para obtener las coordenadas de la ciudad.
Ahora es la cuestión de la que ciudades tienes coordenadas? Si usted no tiene ninguno se puede comprar una base de datos de área de código postal (entonces usted puede tener sus coordenadas fuera de la ciudad que quieren). cuando se tiene las coordenadas de la ciudad, puede ejecutar un cálculo complicado como resultado una distancia. Después de que se puede ver si el resultado / distancia es mayor o menor medida a continuación, 50. Si se puede volver menos como una ciudad en el rango.
no es algo que se hace en pocos minutos