回答
有第三方解決方案Ipinfodb是一個我在過去使用的,我認爲他們可以使用
MaxMind GeoIP是一個良好的服務。他們也有免費的城市級查詢服務。
儘管此鏈接可能會回答問題,但最好在此處包含答案的重要部分並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – 2017-04-24 19:30:20
你可能想看看GeoIP Country Whois Locator在PHPClasses發現了一個PHP庫。
儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的基本部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – 2017-04-24 19:30:38
使用hostip.info服務試試這個代碼:
$country=file_get_contents('http://api.hostip.info/get_html.php?ip=');
echo $country;
// Reformat the data returned (Keep only country and country abbr.)
$only_country=explode (" ", $country);
echo "Country : ".$only_country[1]." ".substr($only_country[2],0,4);
而不是爆炸回報你可以使用json作爲回報。 http://api.hostip.info/get_json.php – Underdog 2014-10-08 11:56:04
$ json_string ='http://api.hostip.info/get_json.php?ip='.$_SERVER['REMOTE_ADDR']; $ jsondata = file_get_contents($ json_string); $ obj = json_decode($ jsondata,true); – Underdog 2014-10-08 12:02:52
該站點無法使用。 – Rohlik 2017-09-02 09:32:10
的IP給你一個相當不可靠的位置,你可以在與JS負載AJAX的位置,如果它是不是第一次有位置的關鍵。 (此外,用戶需要的給你它的存取權限。)
儘管這個鏈接可能回答這個問題,但最好在這裏包含答案的重要部分,並提供供參考的鏈接。如果鏈接頁面更改,則僅鏈接答案可能會失效。 – 2017-04-24 19:31:21
<?php
$user_ip = getenv('REMOTE_ADDR');
$geo = unserialize(file_get_contents("http://www.geoplugin.net/php.gp?ip=$user_ip"));
$country = $geo["geoplugin_countryName"];
$city = $geo["geoplugin_city"];
?>
爲PHP依賴於服務器,實時定位不能僅僅提供靜態位置可以提供它是最好避免依賴於JS的位置,而不是使用PHP。但是,有必要對JS數據發佈到PHP,以便它可以很容易地可以接觸到服務器
<?php
function get_client_ip() {
$ipaddress = '';
if (isset($_SERVER['HTTP_CLIENT_IP']))
$ipaddress = $_SERVER['HTTP_CLIENT_IP'];
else if(isset($_SERVER['HTTP_X_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_X_FORWARDED']))
$ipaddress = $_SERVER['HTTP_X_FORWARDED'];
else if(isset($_SERVER['HTTP_FORWARDED_FOR']))
$ipaddress = $_SERVER['HTTP_FORWARDED_FOR'];
else if(isset($_SERVER['HTTP_FORWARDED']))
$ipaddress = $_SERVER['HTTP_FORWARDED'];
else if(isset($_SERVER['REMOTE_ADDR']))
$ipaddress = $_SERVER['REMOTE_ADDR'];
else
$ipaddress = 'UNKNOWN';
return $ipaddress;
}
$PublicIP = get_client_ip();
$json = file_get_contents("https://freegeoip.net/json/$PublicIP");
$json = json_decode($json ,true);
$country = $json['country_name'];
$region= $json['region_name'];
$city = $json['city'];
?>
<?php
$query = @unserialize (file_get_contents('http://ip-api.com/php/'));
if ($query && $query['status'] == 'success') {
echo 'Hey user from ' . $query['country'] . ', ' . $query['city'] . '!';
}
foreach ($query as $data) {
echo $data . "<br>";
}
?>
程序中使用此源試試這個代碼。有用!
做或不做。沒有「嘗試」。一個好的答案***將總是解釋所做的事情以及爲什麼這樣做,不僅是爲了OP,還是爲了將來訪問SO。 – 2017-04-24 19:31:04
- 1. 獲取Android用戶的當前位置
- 2. 獲取用戶當前位置android
- 3. 如何獲取用戶當前位置
- 4. osmdroid獲取當前用戶位置
- 5. PHP,獲取當前用戶
- 6. 如何在Android的IntentService中獲取用戶的當前位置?
- 7. 如何在Java中獲取當前用戶的地理位置?
- 8. 通過GeoLocation API獲取用戶在JavaScript中的當前位置
- 9. 無法獲取用戶在iOS 5中的當前位置+
- 10. 在rails中獲取當前用戶的位置4.2
- 11. Javascript獲取用戶在Google Maps API中的當前位置
- 12. 獲取用戶在Xamarin iOS中的當前位置
- 13. PHP mysqli_result獲取當前位置
- 14. 無法在intentservice中獲取用戶當前位置
- 15. 如何在asp.net中獲取當前用戶位置
- 16. 在android中獲取當前位置
- 17. 在GPS中獲取當前位置?
- 18. 在mysql表中獲取當前位置
- 19. 獲取當前位置
- 20. 獲取當前位置
- 21. 獲取當前位置
- 22. 獲取當前位置
- 23. 獲取當前位置android
- 24. 獲取當前位置ImageView
- 25. Android獲取當前位置
- 26. android獲取當前位置
- 27. 獲取用戶在MKMapView上的當前位置
- 28. 如何獲取用戶在android上的當前位置?
- 29. Android - 獲取用戶在仿真器上的當前位置
- 30. CLLocation當前位置獲取位置
嗨,我同意Ipinfodb讓你當前的位置起作用,就像魅力一樣。但有一點,我想知道如何安全地連接到api?獲取當前位置的頁面位於https中,並且連接到api位於http中。它給了我一個警告信息,指出網站有一些不安全的內容。對於開發者而言,我知道它並不令人擔憂,但對用戶來說,這可能會讓他們感到震驚,因爲他們沒有任何關於它的技術信息。 – user1149244 2013-03-21 07:29:49