php でクライアントの IP と州と都市を取得する方法
特定の実装コードを提供してください。 。ありがとう。 。
-----解決策---------
複数の IP アドレス API を提供する
Sina の IP アドレス クエリ インターフェイス: http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js
Sina の他の IP アドレス クエリ インターフェイス: http ://counter .sina.com.cn/ip
新浪マルチリージョンテスト方法: http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js&ip=218.192.3.42
捜湖IPアドレス クエリ インターフェイス (デフォルト GBK): http://pv.sohu.com/cityjson
Sohu IP アドレス クエリ インターフェイス (エンコーディングを設定可能): http://pv.sohu.com/cityjson?ie= utf- 8
捜狐の他のIPアドレスクエリインターフェース: http://txt.go.sohu.com/ip/soip
------解決策------
1. 独自の IP ライブラリを構築できます。データは innocence のようにデータ パケットから抽出できます
2. オンラインで IP を取得するためのコードがたくさんあります。ここに 1 つコピーします。
function getip()
{
if ( getenv( "HTTP_CLIENT_IP") && strcasecmp(getenv("HTTP_CLIENT_IP"), "unknown"))
{
$ip = getenv("HTTP_CLIENT_IP");
} else
if (getenv( "HTTP_X_FORWARDED_FOR ") && strcasecmp(getenv("HTTP_X_FORWARDED_FOR"),
"unknown"))
{
$ip = getenv("HTTP_X_FORWARDED_FOR");
} else
if (getenv (" REMOTE_ADDR") && strcasecmp(getenv("REMOTE_ADDR"), "unknown"))
{
$ip = getenv("REMOTE_ADDR");
} else
if (isset($) _SERVER[ 'REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'],
"不明"))
{
$ip = $_SERVER['REMOTE_ADDR' ];
} else
{
$ip = "unknown";
}
return ($ip);
}
3 を渡すことができます。 ip to some 現在インターネット上で利用可能なインターフェイスは、分析用に返されたデータを取得できます
例:
http://int.dpool.sina.com.cn/iplookup/iplookup.php?format= js&ip=219.136.252.33
IP を渡さない場合、訪問者の IP アドレスが自動的に取得されることに注意してください。