Определяем местанахождение человека по IP

August 19, 2014

Статья для множества школьников =)

Полезная функция для определения местоположения по IP. Функция принимает один IP в качестве параметра, и возвращает расположение. Если местоположение не найдено,  возвращается NULL.

    function detect_city($ip) {

$default = NULL;

if (!is_string($ip) || strlen($ip) 1,
CURLOPT_HEADER => 0,
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_USERAGENT => $curlopt_useragent,
CURLOPT_URL => $url,
CURLOPT_TIMEOUT => 1,
CURLOPT_REFERER => 'http://' . $_SERVER['HTTP_HOST'],
);

curl_setopt_array($ch, $curl_opt);

$content = curl_exec($ch);

if (!is_null($curl_info))
$curl_info = curl_getinfo($ch);

curl_close($ch);

if ( preg_match('{

  • City : ([^<]*)
  • }i', $content, $regs) )
    $city = $regs[1];

    if ( preg_match('{

  • State/Province : ([^<]*)
  • }i', $content, $regs) )
    $state = $regs[1];

    if( $city!='' && $state!='' ){
    $location = $city . ', ' . $state;
    return $location;
    }else{
    return $default;
    }

    }

    Комментарии

    comments powered by Disqus