ホームページ >バックエンド開発 >PHPチュートリアル >IPを使用してPHPで都市情報を照合する方法

IPを使用してPHPで都市情報を照合する方法

小云云
小云云オリジナル
2018-03-30 13:24:592058ブラウズ

この記事では主に、PHP で IP を使用して都市情報を照合する方法について説明します。お役に立てれば幸いです。

1. まず、ユーザーの実際の IP を取得する必要があります

function ip(){    if(getenv('HTTP_CLIENT_IP') && strcasecmp(getenv('HTTP_CLIENT_IP'), 'unknown')){        $ip = getenv('HTTP_CLIENT_IP');
    }elseif(getenv('HTTP_X_FORWARDED_FOR') && strcasecmp(getenv('HTTP_X_FORWARDED_FOR'), 'unknown')){        $ip = getenv('HTTP_X_FORWARDED_FOR');
    }elseif(getenv('REMOTE_ADDR') && strcasecmp(getenv('REMOTE_ADDR'), 'unknown')){        $ip = getenv('REMOTE_ADDR');
    }elseif(isset($_SERVER['REMOTE_ADDR']) && $_SERVER['REMOTE_ADDR'] && strcasecmp($_SERVER['REMOTE_ADDR'], 'unknown')){        $ip = $_SERVER['REMOTE_ADDR'];
    }    return preg_match("/[\d\.]{7,15}/", $ip, $matches) ? $matches[0] : 'unknown';
}

2. サードパーティのインターフェースを使用して都市を照合します
:

  • 一致する都市情報は、データベースに保存する必要があります。後で使用します

  • サードパーティが提供する NetEase と Sina の API インターフェースは現在比較的安定していて使いやすいです

1) Sina IP アドレスクエリ API インターフェース
json 形式で返されたデータがここに表示されます
インターフェース: http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=IP アドレス

サンプルコード: フラグメント

$ip = ip();$url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip='.$ip;$res = file_get_contents($url);echo $res;die;

結果は図に示すとおりです:
IPを使用してPHPで都市情報を照合する方法
2 ) NetEase Youdao IP アドレス API インターフェイス
インターフェイス: http://www.youdao.com/smartresult-xml/search.s?type=ip&q=IP アドレス
結果は図に示すとおりです:
IPを使用してPHPで都市情報を照合する方法
3) タオバオIP アドレス ライブラリ API インターフェイス
インターフェイス: http://ip.taabao.com/service/getIpInfo.php?ip=[IP アドレス文字列]
サンプル コード:

$ip = ip();$url = 'http://ip.taobao.com/service/getIpInfo.php?ip='.$ip;$res = file_get_contents($url);echo $res;die;

結果は図に示すとおりです:
IPを使用してPHPで都市情報を照合する方法

3. その他の IP アドレス クエリ インターフェイスと呼び出しメソッド
デザイン ハニカム IP アドレス クエリ インターフェイス: http://www.hujuntao.com/api/ip/ip.php
Tencent IP アドレス クエリ インターフェイス: http://fw.qq .com/ipaddress
新浪 IP アドレス クエリ インターフェイス: http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js
捜狐 IP アドレス クエリ インターフェイス: http://pv.sohu.com /cityjson
Google IP アドレス クエリ インターフェイス: http:// j.maxmind.com/app/geoip.js
Youdao IP アドレス クエリ インターフェイス: http://www.youdao.com/smartresult-xml/search.s
1616 IP アドレス クエリ インターフェイス: http://w.1616 .net/chaxun/iptolocal.php
126 http://ip.ws.126.net/ipquery
hao123 http://app.hao123.com/ipquery/getcity .php?rtype=2
淘宝網 http:// ip.taabao.com/service/getIpInfo.php?ip=117.89.35.58
Pacific Computer Network http://whois.pconline.com.cn/

関連する推奨事項:

PHP が IP マッチングを決定します

以上がIPを使用してPHPで都市情報を照合する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。