Intereting Posts
Как получить строку из HTML с регулярным выражением? Невозможно использовать mysqli в php flex env на движке приложения Как я могу перенести PHP preg_split в Java для особого случая unserializing значения в ADODB? PHP preg_replace три раза с тремя разными шаблонами? правильно или неправильно? Чтение в Malformed XML (некодированные объекты XML) с помощью PHP Symfony2 post-update-cmd дает «Ошибка при создании файла начальной загрузки», cURL действительно медленное Как я могу разделить эту строку с дефисом? Как сравнить одно значение ключа массива с другим значением индекса массива? отличные выделения в литии проверка состояния палиндрома с использованием аргументов функции Генерация страницы из PHP-класса __toString () не должен генерировать ошибку исключения при использовании строки Запретить cookie при запуске скрипта из CLI в codeigniter Создание «робота» для заполнения формы несколькими страницами в

есть хорошая служба геолокации PHP?

Я ищу хорошую службу геолокации PHP, поэтому, когда я запускаю приложение, у меня может быть что-то вроде:

<?php $service = new GeoLocService(); echo $service->getLat(); echo $service->getLng(); ?> 

для получения позиции пользователя в значениях широты и логарифма.

Географическое местоположение должно быть выполнено в браузере, поскольку сервер (т. Е. PHP) никогда не узнает большинство соответствующих данных. Основным API для выполнения геолокации в браузере является Google, но вам, как разработчику, не нужно будет использовать этот API; вы должны использовать API-интерфейс браузера, который стандартизирован (хотя он поддерживается только в нескольких браузерах).

Самая полезная информация, которую вы получите для поиска пользователя на сервере, будет их IP-адресом, которого часто бывает достаточно, чтобы найти их в ближайшем городе. Существуют базы данных IP-to-nation и IP-to-location и API, которые вы можете загрузить, чтобы помочь в этом. Некоторые из них бесплатны, но чтобы добраться до городов, вы будете платить за услугу. В зависимости от того, с кем вы столкнулись, их нужно постоянно обновлять, поскольку диапазоны IP часто перераспределяются.

API-интерфейсы на уровне браузера работают, если браузер просматривает область для точек доступа Wi-Fi. Он отправляет список точек доступа в Google, которые затем используют это для разработки Lat / Long (часто с достоверно точными результатами).

Как они это делают? Вы, возможно, помните, что Google недавно попал в неприятности для сосания данных из Wi-Fis людей? То, что они на самом деле пытались сделать, это сопоставить точки доступа Wi-Fi в мире для этой функции геолокации.

Разумеется, для этого требуется, чтобы клиент имел Wi-Fi.

Обратите внимание, что ваш браузер не дает прямого доступа к этому списку точек доступа к клиенту (например, Javascript или DOM), поэтому вы не можете публиковать его на PHP, чтобы получить местоположение с помощью этого метода через сервер; это должно быть сделано на стороне клиента.

MaxMind PHP API неплох … http://www.maxmind.com/app/php

Прочтите следующие документы по API Geo-Loacaion: http://dev.w3.org/geo/api/spec-source-v2.html

Я уверен, что вышеупомянутые документы будут очень полезны для вас.

PHP получает реальный IP-адрес, страны, город, штат, языки посетителей

Вы можете обнаружить реальный ip, гостевой прокси, языки, штат, город. Но для PHP Code вы должны загрузить исходный код PHP из Github .

 <?php // Required Libraries require_once("ip.codehelper.io.php"); require_once("php_fast_cache.php"); // New Class $_ip = new ip_codehelper(); // Detect Real IP Address & Location $real_client_ip_address = $_ip->getRealIP(); $visitor_location = $_ip->getLocation($real_client_ip_address); // Output result echo $visitor_location['Country']." "; echo "<pre>"; print_r($visitor_location); 

В вашем случае вы получите $ visitor_location ['RegionName'] из возвращаемого результата.