Intereting Posts
PHP xpath – найти элемент со значением, а также получить элементы до и после элемента как классифицировать или группировать массив по дате Используются некоторые переменные PHP, не появляющиеся при использовании нашей контактной формы Одиночный маршрут Laravel для нескольких контроллеров Поверните текст после слэшей в переменные с помощью HTACCESS php POST форма запроса динамической переменной Принуждение объекта SimpleXML к строке, независимо от контекста Как реализовать «Режим обслуживания» на уже созданном веб-сайте Ошибка при загрузке файла из VirusTotal только на сервере? Json Кодировать или сериализовать XML Как печатать сообщения и комментарии только с одним запросом sql Обнаружение лиц в PHP PHP получает все аргументы как массив? Установка PHP, MySql и Apache на windows как оптимизировать mysql-запрос, если у меня слишком много операторов OR в моем запросе?

PHP – определить страну

Возможный дубликат:
пакет для обнаружения пользователей в php?
Географическое местоположение на основе IP-адреса – PHP

Я хочу обнаружить страну моего посетителя.

И я нашел решение в Google, но результат ничего.

Вы можете мне помочь?

    Related of "PHP – определить страну"

    <?php // Author: www.easyjquery.com $ip = $_SERVER['REMOTE_ADDR']; // remember chmod 0777 for folder 'cache' $file = "./cache/".$ip; if(!file_exists($file)) { // request $json = file_get_contents("http://api.easyjquery.com/ips/?ip=".$ip."&full=true"); $f = fopen($file,"w+"); fwrite($f,$json); fclose($f); } else { $json = file_get_contents($file); } $json = json_decode($json,true); echo "<pre>"; print_r($json); ?> 

    Демо-ссылка

    Вот мой способ получить страну вместе с ip посетителя.

     // this is where you get the ip $ip = $_SERVER['REMOTE_ADDR']; // this is where you include the code that gets the country // you can find the code for this file on the link below include("geoiploc.php"); // this is where you create the variable that get you the name of the country $country = getCountryFromIP($ip, " NamE "); в // this is where you get the ip $ip = $_SERVER['REMOTE_ADDR']; // this is where you include the code that gets the country // you can find the code for this file on the link below include("geoiploc.php"); // this is where you create the variable that get you the name of the country $country = getCountryFromIP($ip, " NamE "); 

    php geo ip loc не работает

    Надеюсь это поможет.

    Пусть код будет с вами!

    Обновить:

    Вот еще один метод, который я использовал

      $json = file_get_contents('http://ipinfo.io/' . $this->getIP()); $data = json_decode($json); return $data->country; 

    Существует также эта услуга, но я нашел один выше намного лучше …

      'http://getcitydetails.geobytes.com/GetCityDetails?fqcn=' . $this->getIP() 

    Вот хороший способ получить ip:

     private function getIP() { $server_keys = [ 'HTTP_CLIENT_IP', 'HTTP_X_FORWARDED_FOR', 'HTTP_X_FORWARDED', 'HTTP_X_CLUSTER_CLIENT_IP', 'HTTP_FORWARDED_FOR', 'HTTP_FORWARDED', 'REMOTE_ADDR' ]; foreach ($server_keys as $key) { if (array_key_exists($key, $_SERVER) === true) { foreach (explode(',', $_SERVER[$key]) as $ip) { if (filter_var($ip, FILTER_VALIDATE_IP) !== false) { return $ip; } } } } } 

    Надеюсь, это поможет кому-то!