问题
Sir, I developing a site. In which i get the IP addresses of the users from where they are entered. Now i want to find the State,City and country from where they are entering.That means i want to find the state, country, city from the IP address of the user. the code i need in php. can you help me to do that
回答1:
Have you looked at using the Geo IP module? For example, the geoip_region_by_name() function:
The geoip_region_by_name() function will return the country and region corresponding to a hostname or an IP address.
This function is currently only available to users who have bought a commercial GeoIP Region Edition. A warning will be issued if the proper database cannot be located.
The names of the different keys of the returning associative array are as follows:
- "country_code" -- Two letter country code (see geoip_country_code_by_name())
- "region" -- The region code (ex: CA for California)
回答2:
http://www.hostip.info/ is another option if geoip isn't available.
回答3:
You can actually get the full country name from http://www.iptolatlng.com, What you have to do is build a simple php code. Here is a fiddle for the code http://phpfiddle.org/main/code/mih-iqn
The site returns a jason from php we are decoding that to get the country name.
country
countryFullName
state
stateFullName
city
zip
lat
lng
areacode
these are the results you can get back from the site.
来源:https://stackoverflow.com/questions/1806842/code-for-finding-the-state-country-city-from-the-ip-adress-in-php