comment puis-je à proximité des villes d'une ville donnée?
-
09-10-2019 - |
Question
Considérant un rayon de 50 km de la ville de base que je dois trouver les villes voisines.
Mon script doit être en PHP ... Y at it out .... tout API pour trouver
S'il vous plaît aidez-moi ... s'il vous plaît
thanks ...
La solution
Ceci est une excellente ressource: code.google.com/apis/ cartes / articles / phpsqlsearch.html # findnearsql
Ville de Base: Lat: 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;
Même principe que la solution de "Tricker".
Autres conseils
J'ai écrit une sorte de scripts que le calcul de distances entre les coordonnées. Vous pouvez le faire quand vous avez 2 coordonnées:
base :
- latitude
- longitude
city :
- latitude
- longititude
Vous devez passer dans la ville de base géo coords, alors vous devez envoyer un cURL au serveur Google ou Yahoo (dépend qui géocodage api vous voulez vous) pour obtenir la ville coords.
Maintenant, sa question de quelles villes avez-vous les coordonnées? si vous en avez pas, vous pouvez acheter une base de données de la zone de code postal (vous pouvez alors vos coordonnées au large de la ville que vous voulez avoir). lorsque vous avez les coords de la ville, vous pouvez exécuter un calcul compliqué comme résultat une distance. Après cela, vous pouvez regarder si le résultat / distance est plus ou moins alors 50 si est moindre, vous pouvez le retourner comme une ville dans la gamme.
il n'est pas quelque chose que vous faites en quelques minutes