ホームページ >バックエンド開発 >PHPチュートリアル >PHP を使用して Web サイト訪問者の位置を取得する

PHP を使用して Web サイト訪問者の位置を取得する

高洛峰
高洛峰オリジナル
2017-01-21 13:09:431478ブラウズ

はじめに

大規模なプロジェクトの場合、Web サイトがユーザーのローカル情報を取得することが非常に重要であることは誰もが経験しているはずです。たとえば、ユーザーが訪問したときに 58 機密情報ネットワークがユーザーの位置情報を特定します。をクリックすると、対応するサブステーションにジャンプできるため、全国のすべてのユーザーが北京駅や上海駅を訪れるのではなく、ユーザーに優れたエクスペリエンスを提供できます。

PHP を使用して訪問者の位置を取得することは、大規模なサイトで広く使用されています。もちろん、このアプリケーションに加えて、私は小さなプロジェクトに取り組んでいたときにこれを使用しました。サイト上 異なる地域に異なるコンテンツを表示する小さな機能は、実際には上記の例と似ています。

実装分析

もちろん、このような小さな機能を作成するには、まずサードパーティの IP インターフェイスの使用を検討する必要があります。現在、大規模な IP インターフェイスには Taobao、Sina、NetEase、QQ などが含まれ、最終的にはサードパーティの IP インターフェイスを使用することを検討します。ホームとしての Sina IP の使い方も非常に簡単で、取得した IP アドレスを使用して Sina インターフェイスを使用し、ステータス コードを返し、ステータス コードに基づいてユーザーの位置を取得し、表示するかどうかを判断します。各地域で異なるコンテンツ。

PHPコードは次のとおりです:

<?php
$ip = "218.192.3.42";
$json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip);
$json = json_decode($json, true);
echo "IP地址:".$ip;//xiariboke.com
echo "归属地:".$json["country"].$json["province"].$json["city"].$json["district"].$json["isp"];
?>

JSコードは次のとおりです:

<script type="text/javascript" src="http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=js" charset="utf-8"></script>
<script type="text/javascript">
alert(remote_ip_info.country+" "+remote_ip_info.city);
</script>

訪問者のIPアドレスを取得したい場合は、ここのIPアドレスは固定されています。これを $ip = $_SERVER["REMOTE_ADDR"]; に直接変更すると、次のように、地域に応じて異なるコンテンツを表示する PHP コードが完成します。出力では、ここで JS を出力します。これは、ジャンプ URL など、任意のコンテンツに変更できます。また、静的ページで使用する場合も、非常に簡単です。 JS が含まれているため、コードは次のとおりです。

<?php
 $ip = $_SERVER["REMOTE_ADDR"];
 $json = file_get_contents("http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json&ip=".$ip);
 $json = json_decode($json, true);
   
 if($json["province"]=="河北"){
  echo "document.writeln(\"河北");\n";
}//xiariboke.com
  
 if($json["province"]=="河南"){
  echo "document.writeln(\"河南");\n";
}
?>

action は渡されたパラメータであり、役に立たなくなった場合は削除できます。

概要

上記がこの記事の全内容です。この記事の内容が皆さんの学習や仕事に少しでも役立つことを願っています。ご質問がある場合は、メッセージを残して連絡してください。

PHP を使用して Web サイト訪問者の位置を取得することに関するその他の関連記事については、PHP 中国語 Web サイトに注目してください。

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