Вы можете использовать Geolocation, чтобы получить координаты, а затем некоторую услугу, чтобы получить от этого страну, но API геолокации основан на браузере, поэтому вы можете получить доступ к нему только через JavaScript, а затем каким-то образом передать информацию на PHP написал что-то на JS части один раз:
http://www.lautr.com/utilizing-html5-geolocation-api-and-yahoo-placefinder-example
Когда дело доходит до получения местоположения через IP, есть bazillion услуги, которые там предлагают базы данных для того, некоторые бесплатно, некоторые за плату, некоторые с много хранимых и много данных IP, некоторые с меньшим, например, тем, о котором вы упомянули, прекрасно работают:
http://api.hostip.info/?ip=192.0.32.10
Так Вы можете эфир пойти с API геолокации, который довольно аккуратно, но требуют разрешений пользователей, работает с помощью JS и не работает в IE (до сих пор), либо искать IPU Location Service, что припадки ваши потребности :)
волшебного слова является геолокацией: HTTP: // StackOverflow. com/search? q = php + geolocation –
Вы также можете использовать локали браузера, чтобы угадать, что пользователь может использовать для валюты – Gordon