Coğrafi API

4 Cevap php

Ben sadece bu büyük API rastlamak var: http://ipinfodb.com/ip%5Flocation%5Fapi.php

Ancak, ben de kıtayı almak istiyorum. Ben bulamıyorum bu bile mümkündür.

Belki şehir, ülke ve kıta sunacak serbestçe kullanılabilir bir API var mı? Ben Google'ın AJAX API denedim ama onlar da kıtayı sunmuyoruz.

Belki sadece ben zaten kıtaya ne dönüştürmek zorunda olacak, nasıl?!

Ben bu çok öznel değil umut!

Tüm teşekkürler

4 Cevap

Neden her CountryCode harita yok ** XX ** ilgili kıtaya CountryCode? Sadece yaklaşık 200 ülke ve 5 veya 7 kıtada vardır çünkü çok zor olmamalı.

Değer olarak önemli ve kıta adı gibi ülke kodu ile tüm ülkeler için EDIT: I have no knowledge of such prepared database in PHP, but here is a json_encode 'd dizi:

$json = '{"AD":"Europe","AE":"Asia","AF":"Asia","AG":"North America","AI":"North America","AL":"Europe","AM":"Asia","AN":"North America","AO":"Africa","AQ":"Antarctica","AR":"South America","AS":"Australia","AT":"Europe","AU":"Australia","AW":"North America","AZ":"Asia","BA":"Europe","BB":"North America","BD":"Asia","BE":"Europe","BF":"Africa","BG":"Europe","BH":"Asia","BI":"Africa","BJ":"Africa","BM":"North America","BN":"Asia","BO":"South America","BR":"South America","BS":"North America","BT":"Asia","BW":"Africa","BY":"Europe","BZ":"North America","CA":"North America","CC":"Asia","CD":"Africa","CF":"Africa","CG":"Africa","CH":"Europe","CI":"Africa","CK":"Australia","CL":"South America","CM":"Africa","CN":"Asia","CO":"South America","CR":"North America","CU":"North America","CV":"Africa","CX":"Asia","CY":"Asia","CZ":"Europe","DE":"Europe","DJ":"Africa","DK":"Europe","DM":"North America","DO":"North America","DZ":"Africa","EC":"South America","EE":"Europe","EG":"Africa","EH":"Africa","ER":"Africa","ES":"Europe","ET":"Africa","FI":"Europe","FJ":"Australia","FK":"South America","FM":"Australia","FO":"Europe","FR":"Europe","GA":"Africa","GB":"Europe","GD":"North America","GE":"Asia","GF":"South America","GG":"Europe","GH":"Africa","GI":"Europe","GL":"North America","GM":"Africa","GN":"Africa","GP":"North America","GQ":"Africa","GR":"Europe","GS":"Antarctica","GT":"North America","GU":"Australia","GW":"Africa","GY":"South America","HK":"Asia","HN":"North America","HR":"Europe","HT":"North America","HU":"Europe","ID":"Asia","IE":"Europe","IL":"Asia","IM":"Europe","IN":"Asia","IO":"Asia","IQ":"Asia","IR":"Asia","IS":"Europe","IT":"Europe","JE":"Europe","JM":"North America","JO":"Asia","JP":"Asia","KE":"Africa","KG":"Asia","KH":"Asia","KI":"Australia","KM":"Africa","KN":"North America","KP":"Asia","KR":"Asia","KW":"Asia","KY":"North America","KZ":"Asia","LA":"Asia","LB":"Asia","LC":"North America","LI":"Europe","LK":"Asia","LR":"Africa","LS":"Africa","LT":"Europe","LU":"Europe","LV":"Europe","LY":"Africa","MA":"Africa","MC":"Europe","MD":"Europe","ME":"Europe","MG":"Africa","MH":"Australia","MK":"Europe","ML":"Africa","MM":"Asia","MN":"Asia","MO":"Asia","MP":"Australia","MQ":"North America","MR":"Africa","MS":"North America","MT":"Europe","MU":"Africa","MV":"Asia","MW":"Africa","MX":"North America","MY":"Asia","MZ":"Africa","NA":"Africa","NC":"Australia","NE":"Africa","NF":"Australia","NG":"Africa","NI":"North America","NL":"Europe","NO":"Europe","NP":"Asia","NR":"Australia","NU":"Australia","NZ":"Australia","OM":"Asia","PA":"North America","PE":"South America","PF":"Australia","PG":"Australia","PH":"Asia","PK":"Asia","PL":"Europe","PM":"North America","PN":"Australia","PR":"North America","PS":"Asia","PT":"Europe","PW":"Australia","PY":"South America","QA":"Asia","RE":"Africa","RO":"Europe","RS":"Europe","RU":"Europe","RW":"Africa","SA":"Asia","SB":"Australia","SC":"Africa","SD":"Africa","SE":"Europe","SG":"Asia","SH":"Africa","SI":"Europe","SJ":"Europe","SK":"Europe","SL":"Africa","SM":"Europe","SN":"Africa","SO":"Africa","SR":"South America","ST":"Africa","SV":"North America","SY":"Asia","SZ":"Africa","TC":"North America","TD":"Africa","TF":"Antarctica","TG":"Africa","TH":"Asia","TJ":"Asia","TK":"Australia","TM":"Asia","TN":"Africa","TO":"Australia","TR":"Asia","TT":"North America","TV":"Australia","TW":"Asia","TZ":"Africa","UA":"Europe","UG":"Africa","US":"North America","UY":"South America","UZ":"Asia","VC":"North America","VE":"South America","VG":"North America","VI":"North America","VN":"Asia","VU":"Australia","WF":"Australia","WS":"Australia","YE":"Asia","YT":"Africa","ZA":"Africa","ZM":"Africa","ZW":"Africa"}';

Sadece onu çağırır:

echo '<pre>';
print_r(json_decode($json, true));
echo '</pre>';

Orada sadece 200ish ülkeler ve sadece 6 kıtada, bu yüzden sen bilgi bu biraz belirlemek için bir web hizmeti neden ihtiyaç onlar isimlerini değiştirmek veya ortadan kalkıncaya ülkelerden çok siyasi açıdan istikrarsız kullanıcıların bir sürü almak düşünmüyorsanız ben ... soru olacak app yok önce. Sadece statik bir listesini tutmak.

Ayrıca, tüm ülkeler bir kıtada değildir. Örneğin, Yeni Zelanda, (en azından Ekşi göre) Avustralya'nın bir parçası değildir.

Programlı kullanıcının ülkeyi belirlemek varsa, sahibi statik bir listede kendi kıta aramak için yeterli bilgiye sahip. O Bilgisi kendiniz monte ve bir veritabanı veya XML dosyasına koymak için bir saat alacağını ve nadiren değişecek. Zaten dinamik kıtayı nasıl belirleneceğini öğrenmek için çalışırken zaman neredeyse o miktarda geçirdim.

Önceki MaxMind GeoLite Country ve MaxMind GeoLite City var.

Eğer sonra esas konum kıta ise (ben bilmiyorum GeoLite mağaza) her zaman MySql bir örnek olarak kullanır world database ülke kodlarına GeoLite veritabanından ülke kodlarını harita olabilir veritabanı. Yani saklanan her ülke için kıta vardır.

Try http://www.geobytes.com/IpLocator.htm?GetLocation

Ben, onların online arabirimine her zaman kullanmak API hiç denemedim.