IPアドレスから都道府県を取得する

アクセス元IPアドレスから都道府県を取得してみましょうね。

アクセス元のIPアドレス取得

PHP での処理になりますが、$_SERVER['REMOTE_ADDR'] で取得可能です。

IPアドレスから位置情報取得

なんやかんや、いろんなサービスがあります。

API キー発行から14日間の無料トライアル期間あり。初期費用100,000円(税別)、月額費用はリクエスト数による従量課金。詳しい利用料金はこちら

どこどこJP – http://www.docodoco.jp/

$370 の初回月の料金およびその後は $100 の月間料金。。詳しい利用料金はこちら

MaxMind – https://www.maxmind.com/en/geoip2-services-and-databases

API という形で利用したければ、無料で商用可能なサービスは皆無。ただし、上の MaxMind さんはオープンソース API も提供しており(こちら)、その API で利用する DB ファイルはダウンロードして利用する必要があり、定期的に手動更新(または自動で更新するシステムを作成)する必要もあり。
ライセンスを読んでみると、

GeoLite2 データベースは、クリエイティブ・コモンズ 表示-継承 3.0 非移植ライセンスの下に配布されています。表示要件は、このデータベースの機能もしくは使用に言及するすべての広告および資料に、次の文を含めることで満たされます:

とある。なるほど。じゃぁこのページでも説明するので、ページの下の方に書いておきます(書きましたよ!MaxMindさん!!)

んで、その辺りのセットアップは、まずは http://maxmind.github.io/GeoIP2-php/ で PHP ライブラリの情報を確認。composer でちょちょい……(中略)……てな感じで完了。実際に取得してみると……。

ここで取得する東経北緯情報は当てになりませんな……。

てな感じで現場からは以上です。


この製品には MaxMind が作成した GeoLite2 データが含まれており、http://www.maxmind.com から入手いただけます。