利用PHP获取网站访客的所在地位置

2018-09-07 17:46

阅读:359

  前言

  大家应该都有所体会,如果是做大型项目的话,网站获取用户的本地信息就很关键了,比如58分类信息网,在用户访问的时候会自己判断用户所在地的信息,然后可以跳转到相应的分站上面,这样给用户的体验很好,而不是全国各地的用户全部都来访问北京站或者上海站。

  利用PHP获取访客所在地位置在大型站点中的应用很广,当然,除了这个应用之外,还可以举一反三出许多好玩的东西,今天就在做一个小项目的时候,用到了,在站点不同地区显示不同内容的小功能,其实跟上面的实例差不多。

  实现分析

  制作这样的一个小功能,当然首先就要考虑使用第三方的IP接口,目前,大一点的IP接口有淘宝,新浪,网易,QQ等,最终选择了新浪IP归属地的API,使用上面也很简单,利用获取到的IP地址,使用新浪接口,返回一个状态码,然后根据状态码获取用户所在地的位置,然后再进行各个地区显示不同内容的判断。

  PHP的代码如下:

   <?php $ip = 218.192.3.42; $json = file_get_contents(地址:echo 归属地:.$json[country].$json[province].$json[city].$json[district].$json[isp]; ?>

  JS代码如下:

   <script type=text/javascript src=

  我们主要用到的是PHP的代码,这里的IP地址是固定的,如果想要获取访客的IP地址,直接更改为 $ip = $_SERVER[REMOTE_ADDR]; 就可以了

  下面再贴一段根据地区显示不同内容的PHP代码,如下:

   <?php $ip = $_SERVER[REMOTE_ADDR]; $json = file_get_contents(河北){ echo document.writeln(\河北 if($json[province]==河南){ echo document.writeln(\河南);\n; } ?>

  这段代码没怎么整理与优化,在输出的时候,我这里输出了JS,这里可以更改为任何内容,甚至是跳转网址,另外,如果想要在静态页面中使用的话,也很简单,只要JS包含就可以了,代码如下:

   <script type=text/javascript src=ip.php?action=test></script>

  action 是传递的参数,如果没有用的话,可以删除掉。

  总结

  以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。


评论


亲,登录后才可以留言!